diff options
Diffstat (limited to 'src/WorldStorage/StatSerializer.h')
-rw-r--r-- | src/WorldStorage/StatSerializer.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/WorldStorage/StatSerializer.h b/src/WorldStorage/StatSerializer.h new file mode 100644 index 000000000..72f8d74f1 --- /dev/null +++ b/src/WorldStorage/StatSerializer.h @@ -0,0 +1,55 @@ + +// StatSerializer.h + +// Declares the cStatSerializer class that is used for saving stats into JSON + + + + + +#pragma once + +#include "json/json.h" + + + + + +// fwd: +class cStatManager; + + + + +class cStatSerializer +{ +public: + + cStatSerializer(const AString & a_WorldName, const AString & a_PlayerName, cStatManager * a_Manager); + + /* Try to load the player statistics. Returns whether the operation was successful or not. */ + bool Load(void); + + /* Try to save the player statistics. Returns whether the operation was successful or not. */ + bool Save(void); + + +protected: + + void SaveStatToJSON(Json::Value & a_Out); + + bool LoadStatFromJSON(const Json::Value & a_In); + + +private: + + cStatManager* m_Manager; + + AString m_Path; + + +} ; + + + + |