30 const char* taskPoolNames[] =
42 _taskPool[i] = std::make_unique<TaskPool>(taskPoolNames[i]);
48 assert(
_gfx ==
nullptr);
53 assert(
_gfx ==
nullptr);
58 _gfx = std::make_unique<GFXDevice>(*
this);
59 _sfx = std::make_unique<SFXDevice>(*
this);
60 _pfx = std::make_unique<PXDevice>(*
this);
83 _gfx->idle(fast, deltaTimeUSGame, deltaTimeUSApp );
152 _gfx->onThreadCreated(threadID, isMainRenderThread);
#define PROFILE_SCOPE_AUTO(CATEGORY)
Class that provides an interface between our framework and the OS (start/stop, display support,...
WindowManager & windowManager() noexcept
The kernel is the main system that connects all of our various systems: windows, gfx,...
std::unique_ptr< GFXDevice > _gfx
Access to the GPU.
std::unique_ptr< SFXDevice > _sfx
Access to the audio device.
DisplayWindow & mainWindow() noexcept
std::unique_ptr< GUI > _gui
The graphical user interface.
DisplayWindow & activeWindow() noexcept
Application & app() noexcept
Kernel * _kernel
Main app's kernel.
Kernel & kernel() noexcept
Application & _app
Main application instance.
std::unique_ptr< Input::InputHandler > _inputHandler
Input handler.
std::unique_ptr< PXDevice > _pfx
Access to the physics system.
std::array< std::unique_ptr< TaskPool >, to_base(TaskPoolType::COUNT)> _taskPool
Task pools.
std::unique_ptr< LocalClient > _client
Networking client.
std::unique_ptr< DebugInterface > _debug
Debugging interface: read only / editable variables.
void init(Kernel &kernel)
std::unique_ptr< Editor > _editor
Game editor.
void idle(bool fast=true, U64 deltaTimeUSGame=0u, U64 deltaTimeUSApp=0u)
PlatformContext(Application &app)
void onThreadCreated(const TaskPoolType type, const std::thread::id &threadID, bool isMainRenderThread) const
static void OnThreadCreated(const GFXDevice &gfx, const std::thread::id &threadID, bool isMainRenderThread)
DisplayWindow * activeWindow() const noexcept
constexpr bool ENABLE_EDITOR
constexpr Optick::Category::Type IO
Handle console commands that start with a forward slash.
constexpr U8 to_U8(const T value)
constexpr auto to_base(const Type value) -> Type