-/* $Id$
-
-This file is part of gldbg
-Copyright © 2009 Mikko Rasa, Mikkosoft Productions
-Distributed under the GPL
-*/
-
#ifndef TRACER_H_
#define TRACER_H_
-#include <msp/io/base.h>
+#include <cstdio>
+#include "tool.h"
struct GlPrint;
-class Tracer
+class Tracer: public RegisteredTool<Tracer>
{
private:
GlPrint *glprint;
- Msp::IO::Base *out;
- bool delete_out;
+ FILE *out;
+ bool close_out;
bool enabled;
public:
- Tracer();
+ Tracer(GlDbg &);
~Tracer();
- void set_output(Msp::IO::Base *);
- void set_output(Msp::IO::Base &);
- void enable();
- void disable();
- int decode(const char *, unsigned);
+ virtual void decode(const char *, unsigned);
+private:
+ void set_output(FILE *, bool);
+ void cmd_trace(const std::string &);
};
#endif