192 void CloseApplication();
233 bool m_Running =
true;
240 extern KARMA_API KarmaSmriti m_MemoryManager;
251 Application* CreateApplication();
RunningPlatform
The type of platform application is running on.
Definition Application.h:29
@ Mac
For MacOS (a Unix based OS) support.
Definition Application.h:38
@ Windows
For Windows.
Definition Application.h:43
@ Linux
For Linux based OS support.
Definition Application.h:33
This file contains the classes concerned with activity of Window.
This file contains the classes concerned with activity of game controller device.
#define KARMA_API
Defining Karma's API macro for storage class information.
Definition Core.h:41
This file contains the class KarmaGuiLayer, a Layer between Engine and KarmaGui.
This file contains the class KarmaSmriti, an agnostic memory manager.
This file contains the LayerStack class.
This file contains the class Scene.
This file contains the Window class.
The class for Game + Editor in application form.
Definition Application.h:50
void DecommisionApplicationEngine()
Clean up all the KEngine relevant mess.
Definition Application.cpp:71
void OnEvent(Event &e)
For dispatching events and trickling down the call to Layer stack.
Definition Application.cpp:169
void Run()
Routine containing the main application loop.
Definition Application.cpp:88
void PushLayer(Layer *layer)
Places the Layer in the stack of layers and sends a notification.
Definition Application.cpp:145
void HookInputSystem(std::shared_ptr< Input > input)
Set an event callback to the given input system.
Definition Application.cpp:77
Window & GetWindow() const
Getter for the Window handle.
Definition Application.h:185
void PrepareApplicationForRun()
Do the preliminaries before the main loop run.
Definition Application.cpp:56
void PushOverlay(Layer *layer)
Places the Layer at the front most position, in the sense, after the last inserted layer.
Definition Application.cpp:151
static Application & Get()
Getter for the instance (s_Instance) of the Application.
Definition Application.h:178
Application()
A constructor for Application.
Definition Application.cpp:26
void InitializeApplicationEngine()
Instantiate the instance of KEngine.
Definition Application.cpp:66
void PrepareMemorySoftBed()
All the bulk memory allocation is done to prevent frequent calls to context switching new/delete oper...
Definition Application.cpp:82
Event triggered when the constroller device is connected.
Definition ControllerDeviceEvent.h:22
Event triggered when controller device is disconnected.
Definition ControllerDeviceEvent.h:61
The base class of all the events for Karma.
Definition Event.h:90
Definition KarmaGuiLayer.h:27
Base class of all Karma's Layers. For instance KarmaGuiLayer.
Definition Layer.h:23
Class concerned with the stacked Layer (what a way to frame the idea, if I may say so)
Definition LayerStack.h:22
Event triggered when window is closed.
Definition ApplicationEvent.h:75
The abstract base class of Karma's window (for platform specific purposes)
Definition Window.h:63
Event triggered when Window is resized.
Definition ApplicationEvent.h:22