ECF 1.7
Registry.h
1#ifndef Registry_h
2#define Registry_h
3
4#include <map>
5
6
7#define NODE_ENTRY "Entry"
8
9namespace ECF
10{
11
16enum type
17 { INT, UINT, STRING, FLOAT, DOUBLE, CHAR, ERROR };
18
19
24struct Param
25{
26 voidP value;
27 enum ECF::type T;
28 bool bModified;
29 std::string description;
30};
31
32}
33typedef std::shared_ptr<ECF::Param> ParamP;
34
35
43{
44private:
45 std::map < std::string, ParamP > parameters_;
46 typedef std::map < std::string, ParamP >::iterator map_iter;
47
48public:
49 bool registerEntry(std::string, voidP, enum ECF::type, std::string description = "", uint index = 0);
50 bool isRegistered(std::string);
51 bool modifyEntry(std::string, voidP, uint index = 0);
52 voidP getEntry(std::string, uint index = 0);
53 ECF::type getType(std::string);
54 bool isModified(std::string, uint index = 0);
55 bool readEntries(const XMLNode& node, std::string prefix = "", uint index = 0);
56 void dumpEntries(XMLNode&);
57 void write(XMLNode&);
58};
59typedef std::shared_ptr<Registry> RegistryP;
60
61#endif
62
Repository for all the system parameters.
Definition Registry.h:43
bool isRegistered(std::string)
Definition Registry.cpp:39
voidP getEntry(std::string, uint index=0)
Definition Registry.cpp:71
void write(XMLNode &)
Definition Registry.cpp:345
ECF::type getType(std::string)
Definition Registry.cpp:91
bool modifyEntry(std::string, voidP, uint index=0)
Definition Registry.cpp:50
void dumpEntries(XMLNode &)
Definition Registry.cpp:393
bool readEntries(const XMLNode &node, std::string prefix="", uint index=0)
Definition Registry.cpp:129
bool registerEntry(std::string, voidP, enum ECF::type, std::string description="", uint index=0)
Definition Registry.cpp:15
bool isModified(std::string, uint index=0)
Definition Registry.cpp:106
type
Data types used for configuration file parameters.
Definition Registry.h:17
ECF parameter structure, as stored in the Registry.
Definition Registry.h:25