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
14class BPath;
15
16
17class BTeamDebugger : public BDebugContext {
18public:
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
33private:
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
39private:
40			port_id				fDebuggerPort;
41};
42
43
44#endif	// _TEAM_DEBUGGER_H
45