Elaztek Developer Hub
Blamite Game Engine - blam!  00406.12.10.23.1457.blamite
The core library for the Blamite Game Engine.
core.h File Reference
#include <cstdint>
#include <Windows.h>
#include <sdl2/SDL.h>
#include <sdl2/SDL_events.h>
+ Include dependency graph for core.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.
 

Macros

#define BLAM
 Macro to help prevent name collisions between the engine and 3rd-party libraries/headers. More...
 
#define HALO
 Currently unused macro, presumably for... More...
 
#define UI_API
 Unused macro intended for UI namespaces. Should not be used under any circumstances. More...
 
#define TAG_CLASS
 Unused macro intended for tag class definitions. More...
 
#define BLAM_CFG
 Unused macro intended for configuration namespaces. Should not be used under any circumstances. More...
 
#define HSC
 Unused macro intended for blamscript namespaces. Should not be used under any circumstances. More...
 

Functions

BLAM HWND Blam::GetWin32MainWindowHandle ()
 Retrieves the main window handle of the application. More...
 
BLAM HMODULE Blam::GetEngineDLLHandle ()
 Retrieves the module handle for the engine. More...
 
BLAM SDL_Window * Blam::GetMainWindowHandle ()
 Retrieves the main window handle of the application, when using SDL. More...
 
BLAM bool Blam::MainWindowProcedure (SDL_Event event)
 Window procedure for the main application window. More...
 
BLAM int Blam::StartEngine (int args_count, char *args[], SDL_Window *window)
 Entry point for the engine. More...
 
BLAM int Blam::EngineThreadInit ()
 Performs any additional engine initialization that needs to be called within the engine loop thread. More...
 
BLAM void Blam::MainLoop ()
 Function for the engine's main loop. More...
 
BLAM void Blam::CleanupEngineResources ()
 Instructs the engine to clean up any resources. More...
 

Macro Definition Documentation

◆ BLAM

#define BLAM

Macro to help prevent name collisions between the engine and 3rd-party libraries/headers.

At least, I think that's what it does. I found out that ImGUI does it but I can't find any sort of name or purpose for this. We're gonna leave it alone for the time being - better safe than sorry, right?

This used to be named BLAM_API, but was changed to BLAM as the name BLAM_API didn't really make any sort of sense.

◆ BLAM_CFG

#define BLAM_CFG

Unused macro intended for configuration namespaces. Should not be used under any circumstances.

◆ HALO

#define HALO

Currently unused macro, presumably for...

something. You'll have to ask 16 year-old haloman30 about that one. Don't use this. It's left here as a sort of historical monument - a reminder of how far we've come.

◆ HSC

#define HSC

Unused macro intended for blamscript namespaces. Should not be used under any circumstances.

◆ TAG_CLASS

#define TAG_CLASS

Unused macro intended for tag class definitions.

◆ UI_API

#define UI_API

Unused macro intended for UI namespaces. Should not be used under any circumstances.