00001
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef OM_HGUARD_OMSETTINGS_H
00026 #define OM_HGUARD_OMSETTINGS_H
00027
00028 #include <string>
00029
00034 class OmSettings {
00035 public:
00036 class Internal;
00038 Internal *internal;
00039
00042 OmSettings();
00043
00044
00045
00050 OmSettings(const OmSettings &other);
00052 void operator=(const OmSettings &other);
00053
00055 ~OmSettings();
00056
00063 void set(const std::string &key, const std::string &value);
00064
00071 void set(const std::string &key, const char *value);
00072
00079 void set(const std::string &key, int value);
00080
00087 void set(const std::string &key, double value);
00088
00095 void set(const std::string &key, bool value);
00096
00103 std::string get(const std::string &key) const;
00104
00109 std::string get(const std::string &key, std::string def) const;
00110
00117 int get_int(const std::string &key) const;
00118
00123 int get_int(const std::string &key, int def) const;
00124
00131 bool get_bool(const std::string &key) const;
00132
00137 bool get_bool(const std::string &key, bool def) const;
00138
00145 double get_real(const std::string &key) const;
00146
00151 double get_real(const std::string &key, double def) const;
00152
00156 std::string get_description() const;
00157 };
00158
00159 #endif // OM_HGUARD_OMSETTINGS_H