1/*
2 * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * Copyright 2012, Rene Gollent, rene@gollent.com.
4 * Distributed under the terms of the MIT License.
5 */
6#ifndef WATCHPOINT_MANAGER_H
7#define WATCHPOINT_MANAGER_H
8
9#include <Locker.h>
10
11#include "Watchpoint.h"
12
13
14class DebuggerInterface;
15class Team;
16
17
18class WatchpointManager {
19public:
20								WatchpointManager(Team* team,
21									DebuggerInterface* debuggerInterface);
22								~WatchpointManager();
23
24			status_t			Init();
25
26			status_t			InstallWatchpoint(Watchpoint* watchpoint,
27									bool enabled);
28			void				UninstallWatchpoint(Watchpoint* watchpoint);
29
30private:
31			BLocker				fLock;	// used to synchronize un-/installing
32			Team*				fTeam;
33			DebuggerInterface*	fDebuggerInterface;
34};
35
36
37#endif	// WATCHPOINT_MANAGER_H
38