2 #ifndef _YI_PERSISTENT_STORE_H_ 3 #define _YI_PERSISTENT_STORE_H_ 59 class IYIPersistentStorePriv;
86 template <
typename T>
void Add(
const CYIString &Key,
const T &value);
98 template <
typename T>
bool Find(
const CYIString &Key, T *value)
const;
157 std::map<CYIString, CYIString> m_StateData;
158 uint64_t m_uPersistentStoreMaxSize;
169 template <
typename T>
179 m_StateData[Key] = StringValue;
183 YI_LOGE(
"CYIPersistentStore",
"Add failed for key [%s], conversion of value to string failed.", Key.
GetData());
187 template <
typename T>
192 bool bValueFound =
false;
193 std::map<CYIString, CYIString>::const_iterator KeyValue = m_StateData.find(Key);
194 if (KeyValue != m_StateData.end())
198 T temporary = sValue.
To<T>(&bError);
206 YI_LOGE(
"CYIPersistentStore",
"Value was found for key [%s] but conversion from string failed.", Key.
GetData());
213 #endif // _YI_PERSISTENT_STORE_H_ Definition: YiPersistentStore.h:67
CYIPersistentStore(uint64_t uMaxSizeInBytes=0)
Definition: YiPersistentStore.h:60
void RequestLoad(const CYIString &sFile)
Container class for Unicode strings. Conceptually, a CYIString object is a sequence of Unicode charac...
Definition: YiString.h:35
bool Find(const CYIString &Key, T *value) const
Definition: YiPersistentStore.h:189
The base class for an object accessible from script source code.
Definition: YiScriptableObject.h:28
Definition: YiRecursiveMutex.h:15
Definition: YiPersistentStore.h:66
virtual ~CYIPersistentStore()
STORE_ERROR GetLastErrorCode() const
Definition: YiPersistentStore.h:65
CYIPersistentStore & operator=(const CYIPersistentStore &rRHS)
#define YI_LOGE(tag, msg,...)
Definition: YiLoggerHelper.h:67
CYISignal< bool > LoadCompleted
Definition: YiPersistentStore.h:154
bool Load(const CYIString &sFile)
Definition: YiPersistentStore.h:70
void Remove(const CYIString &key)
static CYIString FromValue(const T &arg, bool *pbError=nullptr)
Definition: YiAutoMutex.h:23
Definition: YiPersistentStore.h:69
STORE_ERROR
Definition: YiPersistentStore.h:63
Definition: YiPersistentStore.h:68
friend class IYIPersistentStorePriv
Definition: YiPersistentStore.h:163
void RequestSave(const CYIString &sFile)
CYISignal< bool > SaveCompleted
Definition: YiPersistentStore.h:148
T To(bool *pbError=nullptr) const
void Add(const CYIString &Key, const T &value)
Definition: YiPersistentStore.h:171
bool Save(const CYIString &sFile)
const char * GetData() const