2 * Copyright 2008-2010, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * Distributed under the terms of the MIT License.
10 #include <debug_support.h>
11 #include <ObjectList.h>
12 #include <Referenceable.h>
13 #include <util/DoublyLinkedList.h>
20 struct system_profiler_team_added
;
23 class Team
: public BReferenceable
{
28 status_t
Init(team_id teamID
, port_id debuggerPort
);
29 status_t
Init(system_profiler_team_added
* addedInfo
);
30 status_t
InitThread(Thread
* thread
);
32 void RemoveThread(Thread
* thread
);
34 void Exec(int32 event
, const char* args
,
35 const char* threadName
);
37 status_t
AddImage(SharedImage
* sharedImage
,
38 const image_info
& imageInfo
, team_id owner
,
40 status_t
RemoveImage(image_id imageID
, int32 event
);
42 inline const BObjectList
<Image
>& Images() const;
43 Image
* FindImage(image_id id
) const;
45 inline team_id
ID() const;
48 void _RemoveImage(int32 index
, int32 event
);
50 bool _SynchronousProfiling() const
51 { return fDebugContext
.nub_port
< 0; }
54 typedef DoublyLinkedList
<Thread
> ThreadList
;
59 debug_context fDebugContext
;
61 BObjectList
<Image
> fImages
;
68 const BObjectList
<Image
>&