xref: /haiku/src/kits/debugger/settings/TeamFileManagerSettings.h (revision fce4895d1884da5ae6fb299d23c735c598e690b1)
1 /*
2  * Copyright 2013, Rene Gollent, rene@gollent.com.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef TEAM_FILE_MANAGER_SETTINGS_H
6 #define TEAM_FILE_MANAGER_SETTINGS_H
7 
8 #include <Message.h>
9 
10 
11 class TeamFileManagerSettings {
12 public:
13 								TeamFileManagerSettings();
14 	virtual						~TeamFileManagerSettings();
15 
16 			TeamFileManagerSettings&
17 								operator=(
18 									const TeamFileManagerSettings& other);
19 									// throws std::bad_alloc;
20 
21 			const char*			ID() const;
22 			status_t			SetTo(const BMessage& archive);
23 			status_t			WriteTo(BMessage& archive) const;
24 
25 			int32				CountSourceMappings() const;
26 			status_t			AddSourceMapping(const BString& sourcePath,
27 									const BString& locatedPath);
28 			status_t			RemoveSourceMappingAt(int32 index);
29 			status_t			GetSourceMappingAt(int32 index,
30 									BString& sourcePath, BString& locatedPath);
31 
32 	virtual	TeamFileManagerSettings*
33 								Clone() const;
34 									// throws std::bad_alloc
35 
36 private:
37 	BMessage					fValues;
38 };
39 
40 
41 #endif	// TEAM_FILE_MANAGER_SETTINGS_H
42