StevEngine
StevEngine is a customizable C++ game engine.
Loading...
Searching...
No Matches
StevEngine::Data::Settings Class Reference

Manages game settings and configuration. More...

#include <data/Settings.hpp>

Public Member Functions

void Init (std::string title)
 Initialize settings manager.
 
template<typename T>
Read (std::string name) const
 Read setting value of specified type.
 
bool HasValue (std::string name) const
 Check if setting exists.
 
template<typename T>
void Save (std::string name, T data)
 Save setting value.
 
void Delete (std::string name)
 Delete saved setting.
 
std::string GetConfigPath () const
 Get path to config directory.
 
void SaveToFile () const
 Write all settings to disk.
 

Detailed Description

Manages game settings and configuration.

Handles saving/loading game settings. Settings are stored in the user's config directory and persist between game sessions.

Member Function Documentation

◆ Delete()

void StevEngine::Data::Settings::Delete ( std::string name)

Delete saved setting.

Parameters
nameSetting key to delete

◆ GetConfigPath()

std::string StevEngine::Data::Settings::GetConfigPath ( ) const
inline

Get path to config directory.

Returns
Path to config directory

◆ HasValue()

bool StevEngine::Data::Settings::HasValue ( std::string name) const

Check if setting exists.

Parameters
nameSetting key to check
Returns
true if setting exists, false otherwise

◆ Init()

void StevEngine::Data::Settings::Init ( std::string title)

Initialize settings manager.

Parameters
titleGame title used for config directory name

◆ Read()

template<typename T>
T StevEngine::Data::Settings::Read ( std::string name) const
inline

Read setting value of specified type.

Template Parameters
TType of setting to read
Parameters
nameSetting key name
Returns
Value of type T

◆ Save()

template<typename T>
void StevEngine::Data::Settings::Save ( std::string name,
T data )
inline

Save setting value.

Template Parameters
TType of value to save
Parameters
nameSetting key name
dataValue to save

The documentation for this class was generated from the following files: