2#ifdef StevEngine_PLAYER_DATA
4#include "utilities/KeyValueStore.hpp"
7namespace StevEngine::Data {
24 void Init(std::string title);
35 template<
typename T> T
Read(std::string name) {
37 if(!data.Contains(name)) {
38 Log::Error(std::format(
"Game data with key '{}' not found!", name),
true);
42 return data.Read<T>(name);
53 template<
typename T>
void Save(std::string name, T data) {
54 this->data.Write(name, data);
62 void Delete(std::string name);
78 std::string appdataPath;
96 extern std::string GetHomePath();
Manages persistent game data storage and retrieval.
Definition DataManager.hpp:16
void Delete(std::string name)
Delete saved data.
Definition DataManager.cpp:54
T Read(std::string name)
Read data of specified type.
Definition DataManager.hpp:35
void Init(std::string title)
Initialize the data manager.
Definition DataManager.cpp:41
void Save(std::string name, T data)
Save data of specified type.
Definition DataManager.hpp:53
std::string GetLogPath()
Get path to log directory.
Definition DataManager.hpp:74
std::string GetAppdataPath()
Get path to app data directory.
Definition DataManager.hpp:68
Definition KeyValueStore.hpp:5