Index: ext/libicpf/src/cfg_xml.h =================================================================== diff -u -N -r3e7ccb6efc5089399a7801082d923aeb41f53d2e -r0d9a4d94a98872815d5840d1bcc4d394d455307c --- ext/libicpf/src/cfg_xml.h (.../cfg_xml.h) (revision 3e7ccb6efc5089399a7801082d923aeb41f53d2e) +++ ext/libicpf/src/cfg_xml.h (.../cfg_xml.h) (revision 0d9a4d94a98872815d5840d1bcc4d394d455307c) @@ -38,15 +38,19 @@ /// Closes the search operation virtual void find_close(ptr_t pFindHandle); - /// Sets a value for a given key (either adds to or replaces the previous value) - virtual void set_value(const tchar_t* pszName, const tchar_t* pszValue, bool bAdd); + /// Sets a value for a given key + virtual void set_value(const tchar_t* pszName, const tchar_t* pszValue, actions a=actions::action_add); + /// Clear values for a given property name + virtual void clear(const tchar_t* pszName); /**@}*/ private: /// Find helper - recursively searches for a specific key node ptr_t find(ptr_t pNodePtr, const tchar_t* pszName); /// Set value helper - searches for a specific node and sets the value - void set_value(ptr_t pNodePtr, const tchar_t* pszName, const tchar_t* pszValue, bool bAdd); + void set_value(ptr_t pNodePtr, const tchar_t* pszName, const tchar_t* pszValue, actions a=actions::action_add); + /// Clear helper - clears the appropriate attribures + void clear(ptr_t pNodePtr, const tchar_t* pszName); protected: ptr_t m_hStorage; ///< Handle to the internal xml storage