/* $Id$
This file is part of gldbg
-Copyright © 2009 Mikko Rasa, Mikkosoft Productions
+Copyright © 2009-2010 Mikko Rasa, Mikkosoft Productions
Distributed under the GPL
*/
#include <vector>
#include <msp/core/application.h>
#include <msp/fs/path.h>
-#include "glstate.h"
+#include "commandinterpreter.h"
+#include "process.h"
+
+class Tool;
class GlDbg: public Msp::Application
{
private:
- Msp::FS::Path libdir;
- int pid;
- std::vector<std::string> args;
+ CommandInterpreter cmd_interp;
+ Process process;
int sock_fd;
std::string buffer;
unsigned buf_offset;
- GlDecoder *glprint;
+ bool flushing;
+ std::list<Tool *> tools;
+ bool got_sigchld;
static RegApp<GlDbg> reg;
public:
GlDbg(int, char **);
+ ~GlDbg();
+
int main();
+ CommandInterpreter &get_command_interpreter() { return cmd_interp; }
+ Process &get_process() { return process; }
+ void launch();
+ void quit(bool);
private:
void tick();
- void launch();
+ void check_child();
+ void read_stream();
+ long ptrace(int, void *, void *);
+ virtual void sighandler(int);
};
#endif