00001
00002
00003
00004
00005
00008
00009 #ifndef _ROKU_INCLUDE_CASCADE_UTIL_CASCADESETTINGS_H
00010 #define _ROKU_INCLUDE_CASCADE_UTIL_CASCADESETTINGS_H
00011
00012 #include <cascade/util/CascadeString.h>
00013
00060 class CascadeSettings : public CascadeObject
00061 {
00062 public:
00063 CascadeSettings(const CascadeString & sectionName);
00069
00070 virtual ~CascadeSettings();
00074 public:
00075 bool SectionExists();
00080 bool CreateSection();
00085 bool ReadStringValue(const CascadeString & variableName, CascadeString & valueToSet);
00092 bool WriteStringValue(const CascadeString & variableName, const CascadeString & value);
00099 bool ReadIntegerValue(const CascadeString & variableName, s32 & valueToSet);
00106 bool WriteIntegerValue(const CascadeString & variableName, const s32 & value);
00113 void Flush();
00120 void DeleteIntegerValue(const CascadeString & variableName);
00125 void DeleteStringValue(const CascadeString & variableName);
00130 void DeleteSection();
00134 typedef bool (IntegerValueEnumProc)(const CascadeString & variableName, const s32 value, void * pClientData);
00147 typedef bool (StringValueEnumProc)(const CascadeString & variableName, const CascadeString & value, void * pClientData);
00160 bool EnumerateIntegerValues(IntegerValueEnumProc * pEnumProc, void * pClientData);
00167 bool EnumerateStringValues(StringValueEnumProc * pEnumProc, void * pClientData);
00174 private:
00175 class Settings;
00176 Settings * m_pSettings;
00177 };
00178
00179 #endif // #ifndef _ROKU_INCLUDE_CASCADE_UTIL_CASCADESETTINGS_H
00180
00182
00184
00185
00186
00187
00188