Elaztek Developer Hub
Blamite Game Engine - blam!  00406.12.10.23.1457.blamite
The core library for the Blamite Game Engine.
core.h
Go to the documentation of this file.
1 // Blamite Engine - Core header file //
3 // (c) Elaztek Studios 2016 - 2020 //
5 
6 #pragma once
7 
8 #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
9 #pragma comment(lib, "gdi32.lib")
10 #pragma comment(lib, "d3d11.lib")
11 #pragma comment(lib, "d3dcompiler.lib")
12 #pragma comment(lib, "dxgi.lib")
13 #pragma comment(lib, "Dwrite.lib")
14 #pragma comment(lib, "d2d1.lib")
15 #pragma comment(lib, "UxTheme.lib")
16 #pragma comment(lib, "Ws2_32.lib")
17 #pragma comment(lib, "Strings.lib")
18 #pragma comment(lib, "windowscodecs.lib")
19 
20 #include <cstdint>
21 #include <Windows.h>
22 #include <sdl2/SDL.h>
23 #include <sdl2/SDL_events.h>
24 
25 #ifndef BLAM
26 
36 #define BLAM
37 #endif
38 
39 #ifndef HALO
40 
44 #define HALO
45 #endif
46 
47 #ifndef UI_API
48 #define UI_API
49 #endif
50 
51 #ifndef TAG_CLASS
52 #define TAG_CLASS
53 #endif
54 
55 #ifndef BLAM_CFG
56 #define BLAM_CFG
57 #endif
58 
59 #ifndef HSC
60 #define HSC
61 #endif
62 
66 namespace Blam
67 {
78 
82  BLAM HMODULE GetEngineDLLHandle();
83 
87  BLAM SDL_Window* GetMainWindowHandle();
88 
97 
107  BLAM int StartEngine(int args_count, char* args[], SDL_Window* window);
108 
114  BLAM int EngineThreadInit();
115 
119  BLAM void MainLoop();
120 
125 }
Blam
Namespace surrounding all major engine components.
Definition: api.h:20
Blam::GetEngineDLLHandle
BLAM HMODULE GetEngineDLLHandle()
Retrieves the module handle for the engine.
Definition: main.cpp:551
Blam::GetWin32MainWindowHandle
BLAM HWND GetWin32MainWindowHandle()
Retrieves the main window handle of the application.
Definition: main.cpp:542
Blam::EngineThreadInit
BLAM int EngineThreadInit()
Performs any additional engine initialization that needs to be called within the engine loop thread.
Definition: main.cpp:485
BLAM
#define BLAM
Macro to help prevent name collisions between the engine and 3rd-party libraries/headers.
Definition: core.h:36
Blam::MainLoop
BLAM void MainLoop()
Function for the engine's main loop.
Definition: main.cpp:490
Blam::MainWindowProcedure
BLAM bool MainWindowProcedure(SDL_Event event)
Window procedure for the main application window.
Definition: main.cpp:90
Blam::CleanupEngineResources
BLAM void CleanupEngineResources()
Instructs the engine to clean up any resources.
Definition: main.cpp:501
SDL_Event
Definition: SdlEmulationLayer.h:735
Blam::StartEngine
BLAM int StartEngine(int args_count, char *args[], SDL_Window *window)
Entry point for the engine.
Definition: main.cpp:255
Blam::GetMainWindowHandle
BLAM SDL_Window * GetMainWindowHandle()
Retrieves the main window handle of the application, when using SDL.
Definition: main.cpp:537