Elaztek Developer Hub
Blamite Game Engine - blam!  00423.10.27.24.0533.blamite
The core library for the Blamite Game Engine.
globals.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <string>
4 #include <map>
5 #include <vector>
6 
7 #include <Strings/components/resources/color/BlamColor.h>
8 #include <Strings/components/utils/string/string.h>
9 
10 #include "api/v1/types/globals.h"
11 
12 #define GLOBALS_FILE "globals.xml"
13 
14 #ifndef BLAM
15 #define BLAM
16 #endif
17 
23 namespace Blam::Globals
24 {
33  BLAM std::map<std::string, BlamEngineGlobal>* GetGlobalsList();
34 
41 
49  BLAM std::string GetGlobalTypeLabel(BlamGlobalType type);
50 
58  BLAM bool GlobalExists(std::string id);
59 
66 
74  BLAM void RegisterGlobal(std::string name, std::string value_raw, BlamGlobalType type);
75 
84  BLAM void RegisterGlobal(std::string name, std::string value_raw, BlamGlobalType type, std::string info);
85 
93  BLAM BlamEngineGlobal* GetGlobal(std::string name);
94 
103  BLAM BlamGlobalUpdateResult UpdateGlobalWrap(std::string name, std::string new_value);
104 
113  BLAM BlamGlobalUpdateResult UpdateGlobal(std::string name, std::string new_value);
114 
123  BLAM BlamGlobalUpdateResult UpdateGlobal(std::string name, bool new_value);
124 
133  BLAM BlamGlobalUpdateResult UpdateGlobal(std::string name, int new_value);
134 
143  BLAM BlamGlobalUpdateResult UpdateGlobal(std::string name, short new_value);
144 
153  BLAM BlamGlobalUpdateResult UpdateGlobal(std::string name, long new_value);
154 
163  BLAM BlamGlobalUpdateResult UpdateGlobal(std::string name, float new_value);
164 
173  BLAM BlamGlobalUpdateResult UpdateGlobal(std::string name, BlamColor new_value);
174 
182  BLAM bool* GetGlobalAsBoolean(std::string name);
183 
191  BLAM std::string* GetGlobalAsString(std::string name);
192 
200  BLAM short* GetGlobalAsShort(std::string name);
201 
209  BLAM long* GetGlobalAsLong(std::string name);
210 
218  BLAM int* GetGlobalAsInteger(std::string name);
219 
227  BLAM float* GetGlobalAsFloat(std::string name);
228 
236  BLAM BlamColor* GetGlobalAsColor(std::string name);
237 }
Blam::Globals::GlobalExists
BLAM bool GlobalExists(std::string id)
Determines whether or not a global exists.
Definition: globals.cpp:27
Blam::Globals::UpdateGlobal
BLAM BlamGlobalUpdateResult UpdateGlobal(std::string name, std::string new_value)
Updates the value of a String global.
Definition: globals.cpp:574
Blam::Globals
Namespace containing functions relating to game engine globals.
Definition: globals.h:23
Blam::Globals::LoadGlobalsFromFile
BLAM bool LoadGlobalsFromFile()
Loads any globals from #GVARS_FILE.
Definition: globals.cpp:202
Blam::Globals::GetGlobalAsFloat
BLAM float * GetGlobalAsFloat(std::string name)
Retrieves a global's value as a float.
Definition: globals.cpp:403
Blam::Globals::GetGlobalAsColor
BLAM BlamColor * GetGlobalAsColor(std::string name)
Retrieves a global's value as a BlamColor.
Definition: globals.cpp:415
BlamGlobalUpdateResult
BlamGlobalUpdateResult
Enumerator for the result of a global update attempt.
Definition: globals.h:9
BlamGlobalType
BlamGlobalType
Enumerator for the type of global variable.
Definition: globals.h:22
BlamEngineGlobal
Structure containing data for a game engine global.
Definition: globals.h:44
Blam::Globals::RegisterGlobal
BLAM void RegisterGlobal(BlamEngineGlobal var)
Registers a new engine global.
Definition: globals.cpp:61
Blam::Globals::GetGlobalAsShort
BLAM short * GetGlobalAsShort(std::string name)
Retrieves a global's value as a short.
Definition: globals.cpp:367
Blam::Globals::GetGlobalTypeLabel
BLAM std::string GetGlobalTypeLabel(BlamGlobalType type)
Retrieves a string representation of a global's type, for use in UI.
Definition: globals.cpp:40
Blam::Globals::GetGlobal
BLAM BlamEngineGlobal * GetGlobal(std::string name)
Retrieves a global with the specified ID.
Definition: globals.cpp:189
Blam::Globals::GetGlobalAsLong
BLAM long * GetGlobalAsLong(std::string name)
Retrieves a global's value as a long.
Definition: globals.cpp:379
BLAM
#define BLAM
Definition: globals.h:15
Blam::Globals::GetGlobalAsString
BLAM std::string * GetGlobalAsString(std::string name)
Retrieves a global's value as a string.
Definition: globals.cpp:355
Blam::Globals::UpdateGlobalWrap
BLAM BlamGlobalUpdateResult UpdateGlobalWrap(std::string name, std::string new_value)
Updates a global's raw value.
Definition: globals.cpp:431
globals.h
Blam::Globals::GetGlobalAsBoolean
BLAM bool * GetGlobalAsBoolean(std::string name)
Retrieves a global's value as a boolean.
Definition: globals.cpp:343
Blam::Globals::GetGlobalsList
BLAM std::map< std::string, BlamEngineGlobal > * GetGlobalsList()
Retrieves the list of loaded globals.
Definition: globals.cpp:22
Blam::Globals::GetGlobalAsInteger
BLAM int * GetGlobalAsInteger(std::string name)
Retrieves a global's value as an int.
Definition: globals.cpp:391