Index: src/libchcore/TModificationTracker.h =================================================================== diff -u -N -r213cc1a2b3530ea7cb31fd0dac258df23bcc3416 -r95a466ca0a4f95851dcacf2b80e2084e0168b7e4 --- src/libchcore/TModificationTracker.h (.../TModificationTracker.h) (revision 213cc1a2b3530ea7cb31fd0dac258df23bcc3416) +++ src/libchcore/TModificationTracker.h (.../TModificationTracker.h) (revision 95a466ca0a4f95851dcacf2b80e2084e0168b7e4) @@ -29,23 +29,23 @@ public: TModificationTracker() : m_tValue(), - m_chModified(eMod_None) + m_chModified(eMod_Modified) { } - TModificationTracker(const TModificationTracker& rSrc) : - m_chModified(rSrc.m_chModified), - m_tValue(rSrc.m_tValue) - { - } - template TModificationTracker(const V& rValue, bool bAdded) : m_tValue(rValue), m_chModified((char)eMod_Modified | (bAdded ? (char)eMod_Added : (char)eMod_None)) { } + TModificationTracker(const TModificationTracker& rSrc) : + m_chModified(rSrc.m_chModified), + m_tValue(rSrc.m_tValue) + { + } + TModificationTracker& operator=(const TModificationTracker& rSrc) { m_chModified = rSrc.m_chModified; @@ -71,6 +71,11 @@ return m_tValue; } + const T& Get() const + { + return m_tValue; + } + T& Modify() { m_chModified |= eMod_Modified;