root/trunk/ElephantDebugApi/debugger_interfaces.h

Revision 5, 0.9 kB (checked in by qbert, 3 years ago)

Initial ( and last :( ) commit

Line 
1 #ifndef DEBBUGER_INTERFACES_H
2 #define DEBBUGER_INTERFACES_H
3 #include <string.h>
4 #include "edbgstructures.h"
5
6 using std::string;
7
8 class IDebugDispatcher {
9 public:
10     IDebugDispatcher () {}
11     virtual void OnException(ExceptionData& ed ) = 0;
12     virtual void OnDllLoad(DLLData& dl ) = 0;
13     virtual void OnOutput(const string& data) = 0;
14     virtual void OnNewProcess(ProcessData &pd ) = 0;
15     virtual void OnNewThread ( ThreadData& td ) = 0;
16     virtual void OnEnd(BreakData& data ) = 0;
17     virtual void OnBreakPoint(BreakData& bd ) = 0;
18     virtual void OnTrace(const string& data ) = 0;
19
20 };
21
22 class IDebugger {
23 public:
24
25     virtual bool Run () = 0;
26     virtual void Pause () = 0;
27     virtual void Stop () = 0;
28     virtual bool Load(const string& path ) = 0;
29     virtual bool End () = 0;
30
31    
32 };
33
34 class IWin32Debugger : public IDebugger {
35 public:
36
37     virtual void MainLoop () = 0;
38 };
39
40 #endif
Note: See TracBrowser for help on using the browser.