Blamite Game Engine - blam!  00296.01.12.21.0102.blamite
The core library for the Blamite Game Engine.
config.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <map>
4 #include <string>
5 #include <Windows.h>
6 
7 #include <Strings/components/settings/config/config.h>
8 
11 
12 #define CONFIG_VER "1"
13 #define CONFIG_COMMENT_DELIMETER "#"
14 #define CONFIG_DEFAULT_NAME "engine.cfg"
15 #define CONFIG_COLOR_NAME "console_colors.cfg"
16 
17 
22 #define ENGINE_CFG Blam::Config::GetConfig()
23 
24 #ifndef BLAM
25 #define BLAM
26 #endif
27 
28 namespace Blam
29 {
33  namespace Settings::Config
34  {
35  BLAM BlamResult LoadEngineConfiguration();
36  BLAM BlamResult LoadConfiguration(std::string filename);
37  BLAM BlamResult LoadConfiguration(std::string filename, int defaults_resource_id);
38  BLAM BlamResult LoadConfiguration(std::string filename, int defaults_resource_id, std::string defaults_resource_type);
39  BLAM BlamResult LoadConfiguration(std::string filename, HMODULE dll_handle, int defaults_resource_id);
40  BLAM BlamResult LoadConfiguration(std::string filename, HMODULE dll_handle, int defaults_resource_id, std::string defaults_resource_type);
41 
42  BLAM BlamConfigurationFile* GetEngineConfiguration();
43  BLAM BlamConfigurationFile* GetConfiguration(std::string filename);
44 
46  BLAM bool IsConfigurationAvailable(std::string filename);
47 
49  BLAM void ExpandFilePlaceholders(BlamConfigurationFile* file);
50 
51  BLAM std::map<std::string, BlamConfigurationFile*>* GetConfigurationFiles();
52  }
53 
59  namespace Config
60  {
64  struct ConfigFile
65  {
66  std::string filename;
67 
71  ConfigFile(std::string _filename);
72 
76  std::string GetString(std::string option);
77 
81  bool GetBoolean(std::string option);
82 
86  int GetInt(std::string option);
87 
91  float GetFloat(std::string option);
92  };
93 
98 
102  BLAM ConfigFile* GetConfig(std::string filename);
103  }
104 }
Blam
Namespace surrounding all major engine components.
Definition: blam_api.h:18
Blam::Settings::Config::GetEngineConfiguration
BLAM BlamConfigurationFile * GetEngineConfiguration()
Definition: config.cpp:79
Blam::Config::ConfigFile::filename
std::string filename
Definition: config.h:66
Blam::Settings::Config::IsConfigurationAvailable
BLAM bool IsConfigurationAvailable(std::string filename)
Definition: config.cpp:115
Blam::Config::GetConfig
BLAM ConfigFile * GetConfig()
Definition: compat.cpp:5
Blam::Settings::Config::GetConfiguration
BLAM BlamConfigurationFile * GetConfiguration(std::string filename)
Definition: config.cpp:91
Blam::Config::ConfigFile::GetInt
int GetInt(std::string option)
Definition: compat.cpp:98
Blam::Config::ConfigFile::ConfigFile
ConfigFile(std::string _filename)
Definition: compat.cpp:33
Blam::Settings::Config::LoadConfiguration
BLAM BlamResult LoadConfiguration(std::string filename)
Definition: config.cpp:22
dll_handle
HMODULE dll_handle
The module handle of the Engine library.
Definition: main.cpp:62
BLAM
#define BLAM
Definition: config.h:25
errors.h
Blam::Settings::Config::ExpandFilePlaceholders
BLAM void ExpandFilePlaceholders(BlamConfigurationFile *file)
Definition: placeholder_expand.cpp:143
globals.h
Blam::Settings::Config::ExpandAllPlaceholders
BLAM void ExpandAllPlaceholders()
Definition: config.cpp:127
Blam::Settings::Config::GetConfigurationFiles
BLAM std::map< std::string, BlamConfigurationFile * > * GetConfigurationFiles()
Definition: config.cpp:137
Blam::Config::ConfigFile::GetBoolean
bool GetBoolean(std::string option)
Definition: compat.cpp:38
Blam::Settings::Config::LoadEngineConfiguration
BLAM BlamResult LoadEngineConfiguration()
Definition: config.cpp:11
Blam::Config::ConfigFile::GetString
std::string GetString(std::string option)
Definition: compat.cpp:58
Blam::Config::ConfigFile
Definition: config.h:64
Blam::Settings::Config::IsEngineConfigurationAvailable
BLAM bool IsEngineConfigurationAvailable()
Definition: config.cpp:103
Blam::Config::ConfigFile::GetFloat
float GetFloat(std::string option)
Definition: compat.cpp:78