xref: /haiku/headers/private/debug/TeamDebugger.h (revision fce4895d1884da5ae6fb299d23c735c598e690b1)
1 /*
2  * Copyright 2010, Ingo Weinhold, ingo_weinhold@gmx.de.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef _TEAM_DEBUGGER_H
6 #define _TEAM_DEBUGGER_H
7 
8 
9 #include <debugger.h>
10 
11 #include <DebugContext.h>
12 
13 
14 class BPath;
15 
16 
17 class BTeamDebugger : public BDebugContext {
18 public:
19 								BTeamDebugger();
20 								~BTeamDebugger();
21 
22 			status_t			Install(team_id team);
23 			status_t			Uninstall();
24 
25 			status_t			LoadProgram(const char* const* args,
26 									int32 argCount, bool traceLoading);
27 
28 			status_t			ReadDebugMessage(int32& _messageCode,
29 									debug_debugger_message_data& messageBuffer);
30 
31 			port_id				DebuggerPort() const { return fDebuggerPort; }
32 
33 private:
34 	static	thread_id			_LoadProgram(const char* const* args,
35 									int32 argCount, bool traceLoading);
36 	static	status_t			_FindProgram(const char* programName,
37 									BPath& resolvedPath);
38 
39 private:
40 			port_id				fDebuggerPort;
41 };
42 
43 
44 #endif	// _TEAM_DEBUGGER_H
45