mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-11-09 17:58:20 +00:00
42a71bbeab
* feat: add DLU_CONFIG_DIR env var * fix: PascalCase
39 lines
761 B
C++
39 lines
761 B
C++
#pragma once
|
|
#include <fstream>
|
|
#include <map>
|
|
#include <string>
|
|
|
|
class dConfig {
|
|
public:
|
|
dConfig(const std::string& filepath);
|
|
|
|
/**
|
|
* Checks whether the specified filepath exists
|
|
*/
|
|
static const bool Exists(const std::string& filepath);
|
|
|
|
/**
|
|
* Gets the specified key from the config. Returns an empty string if the value is not found.
|
|
*
|
|
* @param key Key to find
|
|
* @return The keys value in the config
|
|
*/
|
|
const std::string& GetValue(std::string key);
|
|
|
|
/**
|
|
* Loads the config from a file
|
|
*/
|
|
void LoadConfig();
|
|
|
|
/**
|
|
* Reloads the config file to reset values
|
|
*/
|
|
void ReloadConfig();
|
|
private:
|
|
void ProcessLine(const std::string& line);
|
|
|
|
private:
|
|
std::map<std::string, std::string> m_ConfigValues;
|
|
std::string m_ConfigFilePath;
|
|
};
|