Index: ext/libicpf/src/cfg.h =================================================================== diff -u -N -r771dac1fbb7608aa92942c6cab7c5c8b0cccb791 -r0d9a4d94a98872815d5840d1bcc4d394d455307c --- ext/libicpf/src/cfg.h (.../cfg.h) (revision 771dac1fbb7608aa92942c6cab7c5c8b0cccb791) +++ ext/libicpf/src/cfg.h (.../cfg.h) (revision 0d9a4d94a98872815d5840d1bcc4d394d455307c) @@ -77,12 +77,12 @@ /** \name Construction/destruction */ /**@{*/ config(config_base* pCfgBase); ///< Standard constructor - ~config(); ///< Standard destructor + ~config(); ///< Standard destructor /**@}*/ /** \name Reading and writing to the external medium */ /**@{*/ - void read(const tchar_t *pszPath); ///< Reads the file with properties + void read(const tchar_t *pszPath); ///< Reads the properties from the source file void write(const tchar_t* pszPath); ///< Saves the properties to the file /**@}*/ @@ -121,15 +121,15 @@ /** \name Getting and setting values */ /**@{*/ /// Gets the value of string-type property - const tchar_t* get_value(uint_t uiProp, tchar_t* pszBuffer, size_t stMaxSize, size_t stIndex=0) const; + const tchar_t* get_value(uint_t uiProp, tchar_t* pszBuffer, size_t stMaxSize, size_t stIndex=0); /// Gets the value of longlong_t-type property - ll_t get_signed_num(uint_t uiProp, size_t stIndex=0) const; + ll_t get_signed_num(uint_t uiProp, size_t stIndex=0); /// Gets the value of ulonglong_t-type property - ull_t get_unsigned_num(uint_t uiProp, size_t stIndex=0) const; + ull_t get_unsigned_num(uint_t uiProp, size_t stIndex=0); /// Gets the value of bool-type property - bool get_bool(uint_t uiProp, size_t stIndex=0) const; + bool get_bool(uint_t uiProp, size_t stIndex=0); /// Gets the value of string-type property - const tchar_t* get_string(uint_t uiProp, size_t stIndex=0) const; + const tchar_t* get_string(uint_t uiProp, size_t stIndex=0); // setting property data /// Sets the value from the string @@ -145,6 +145,10 @@ /**@}*/ protected: + void load_registered(); ///< Loads the registered property values from the underlying config base + void store_registered(); ///< Stores the registered property values to the underlying config base + +protected: mutex m_lock; ///< Lock for the multi-threaded access to the properties ptr_t m_hProps; ///< Handle to the registered property storage config_base* m_pCfgBase; ///< Underlying base for this class