Index: src/ch/TTaskConfigTracker.h =================================================================== diff -u -N --- src/ch/TTaskConfigTracker.h (revision 633a533cb6e741d44fe28aa56339e1d2709b1b27) +++ src/ch/TTaskConfigTracker.h (revision 0) @@ -1,72 +0,0 @@ -// ============================================================================ -// Copyright (C) 2001-2010 by Jozef Starosczyk -// ixen@copyhandler.com -// -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU Library General Public License -// (version 2) as published by the Free Software Foundation; -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU Library General Public -// License along with this program; if not, write to the -// Free Software Foundation, Inc., -// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -// ============================================================================ -/// @file TConfigTracker.h -/// @date 2010/10/04 -/// @brief Contains declaration of the TTaskConfigTracker class. -// ============================================================================ -#ifndef __TCONFIGTRACKER_H__ -#define __TCONFIGTRACKER_H__ - -#include "CfgProperties.h" - -class TOptionsSet -{ -public: - TOptionsSet& operator%(ETaskOptions eOption); - - std::set& Get(); - -private: - std::set m_setOptions; -}; - -class TTaskConfigTracker -{ -public: - TTaskConfigTracker(); - ~TTaskConfigTracker(); - - bool IsModified() const; - bool IsModified(ETaskOptions eOption) const; - bool IsModified(TOptionsSet setOptions) const; - bool IsModified(ETaskOptions eOption, bool bResetModificationState); - bool IsModified(TOptionsSet setOptions, bool bResetModificationState); - - void AddModified(const chcore::TString& strModified); - void AddModified(ETaskOptions eModified); - void AddModified(TOptionsSet setOptions); - void AddModified(const chcore::TStringSet& setModified); - void AddModified(const std::set& setModified); - - void RemoveModification(ETaskOptions eModified); - void RemoveModificationSet(TOptionsSet setOptions); - void RemoveModification(const chcore::TString& strModified); - void Clear(); - - static void NotificationProc(const chcore::TStringSet& setModifications, void* pParam); - -protected: - static ETaskOptions GetOptionFromString(const chcore::TString& strOption); - -protected: - std::set m_setModified; - mutable boost::shared_mutex m_lock; -}; - -#endif // __TCONFIGTRACKER_H__