xref: /haiku/headers/private/debugger/model/TeamMemory.h (revision fce4895d1884da5ae6fb299d23c735c598e690b1)
1 /*
2  * Copyright 2015, Rene Gollent, rene@gollent.com.
3  * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
4  * Distributed under the terms of the MIT License.
5  */
6 #ifndef TEAM_MEMORY_H
7 #define TEAM_MEMORY_H
8 
9 
10 #include <Referenceable.h>
11 
12 #include "TargetAddressRange.h"
13 
14 
15 class BString;
16 
17 
18 class TeamMemory : public BReferenceable {
19 public:
20 	virtual						~TeamMemory();
21 
22 
23 	virtual	status_t			GetMemoryProperties(target_addr_t baseAddress,
24 									uint32& protection, uint32& locking) = 0;
25 
26 	virtual	ssize_t				ReadMemory(target_addr_t address, void* buffer,
27 									size_t size) = 0;
28 	virtual	status_t			ReadMemoryString(target_addr_t address,
29 									size_t maxLength, BString& _string);
30 	virtual ssize_t				WriteMemory(target_addr_t address,
31 									void* buffer, size_t size) = 0;
32 };
33 
34 
35 #endif	// TEAM_MEMORY_H
36