Elaztek Developer Hub
Blamite Game Engine - blam!  00423.10.27.24.0533.blamite
The core library for the Blamite Game Engine.
engine_definitions.h File Reference
#include <string>
+ Include dependency graph for engine_definitions.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 Blam
 Namespace surrounding all major engine components.
 
 Blam::BuildInfo
 Namespace containing functions which provide engine build information.
 

Macros

#define REL_TYPE   "debug"
 
#define DEV_MODE   true
 
#define BLAM
 
#define UI_API
 

Enumerations

enum  BlamRuntimeConfiguration {
  BlamRuntimeConfiguration::CacheRelease, BlamRuntimeConfiguration::CacheDebug, BlamRuntimeConfiguration::TagDebug, BlamRuntimeConfiguration::CacheTest,
  BlamRuntimeConfiguration::TagTest, BlamRuntimeConfiguration::Unspecified
}
 Enumerator listing possible engine runtime configurations. More...
 
enum  BlamContentSource { BlamContentSource::Tags, BlamContentSource::Cache }
 Enumerator listing possible content sources. More...
 
enum  BlamBuildType { BlamBuildType::Debug, BlamBuildType::Test, BlamBuildType::Release }
 Enumerator listing possible build types. More...
 
enum  BlamVersionStringDisplayMode { BlamVersionStringDisplayMode::Default, BlamVersionStringDisplayMode::Console, BlamVersionStringDisplayMode::TextLog, BlamVersionStringDisplayMode::CrashScreen }
 Enumerator listing possible display modes for the Blamite build string. More...
 

Functions

BLAM BlamRuntimeConfiguration Blam::BuildInfo::GetCurrentRuntimeConfig ()
 Retrieves the current runtime configuration. More...
 
BLAM BlamContentSource Blam::BuildInfo::GetContentSource ()
 Retrieves the current content source. More...
 
BLAM BlamBuildType Blam::BuildInfo::GetBuildType ()
 Retrieves the current build type. More...
 
BLAM std::string Blam::BuildInfo::GetVersionBuildString (BlamVersionStringDisplayMode display_mode)
 Retrieves the build string of the engine. More...
 
BLAM std::string Blam::BuildInfo::GetBuildDateTime ()
 Retrieves the build date and time of the engine, pulled directly from the __DATE__ and __TIME__ macros. More...
 
BLAM std::string Blam::BuildInfo::GetReleaseType ()
 Retrieves the release type of the engine. More...
 

Macro Definition Documentation

◆ BLAM

#define BLAM

◆ DEV_MODE

#define DEV_MODE   true

◆ REL_TYPE

#define REL_TYPE   "debug"

◆ UI_API

#define UI_API

Enumeration Type Documentation

◆ BlamBuildType

enum BlamBuildType
strong

Enumerator listing possible build types.

Determined by BlamRuntimeConfiguration.

Enumerator
Debug 

The engine is built as a debug build.

Debug builds are compiled as debug, with release optimizations disabled, and will include all built-in debugging tools.

Test 

The engine is built as a test build.

Test builds behave closer to Debug builds, but are compiled using Release optimizations while leaving debug features enabled.

Release 

The engine is built as a release build.

Release builds are compiled as release, and by default, do not include any debugging tools. If the developer chooses, these tools can still be included and enabled using command-line arguments or game scripts.

◆ BlamContentSource

enum BlamContentSource
strong

Enumerator listing possible content sources.

Determined by BlamRuntimeConfiguration.

Enumerator
Tags 

The engine will load all content from tags.

Cache 

The engine will load all content from cache files.

◆ BlamRuntimeConfiguration

Enumerator listing possible engine runtime configurations.

This value is effectively set at compile-time, and is used to enable/disable certain features.

Enumerator
CacheRelease 

Indicates the engine was built with the 'Cache Release' configuration.

This configuration should have no debug or development tools enabled by default. The console and debug menu can be enabled using command-line switches, however most debugging functions are disabled.

CacheDebug 

Indicates the engine was built with the 'Cache Debug' configuration.

In this configuration, the engine is compiled with all in-engine debug tools enabled. The engine will not acknowledge loose tag files, but will instead operate using Cache files, like Release.

TagDebug 

Indicates the engine was built with the 'Tag Debug' configuration.

In this configuration, the engine is compiled with all engine debug tools enabled. The engine will operate using loose tag files, and will not attempt to read cache files.

CacheTest 

Indicates the engine was built with the 'Cache Test' configuration.

In this configuration, the engine is built for release - but includes all in-engine debug tools. The engine will load content from cache files. This build is generally used for testing release-ready content.

TagTest 

Indicates the engine was built with the 'Tag Test' configuration.

In this configuration, the engine is built for release - but includes all in-engine debug tools. The engine will load content from loose tag files. This build is intended for creating content using the Editing Kit, but not for any development with the game engine itself.

Unspecified 

A fallback configuration that is returned in the event that no configuration is properly set.

If this happens, then an error occurred during compilation or the build configuration is incorrect.

◆ BlamVersionStringDisplayMode

Enumerator listing possible display modes for the Blamite build string.

In the Halo engine, the build version displays slightly differently depending on where it's being displayed. This enum is used to replicate that display style where appropriate.

In any other contexts besides the specific cases listed here (or ones that appear elsewhere in the Halo engine), you should just use Default.

Enumerator
Default 

Indicates the build string should use the default format.

Console 

Indicates the build string should be formatted for the in-game console.

TextLog 

Indicates the build string should be formatted for plain text log files.

CrashScreen 

Indicates the build string should be formatted for the crash screen.