PixelBullet  0.0.1
A C++ game engine
Loading...
Searching...
No Matches
runtime_internal.h
1#pragma once
2
3#include <cstdint>
4
5namespace pixelbullet::glfw_runtime_internal
6{
7using ErrorCallback = void (*)(int, const char*);
8
10{
11 unsigned int window_count = 0;
12 unsigned int next_window_id = 0;
13};
14
16{
17public:
18 virtual ~Platform() = default;
19
20 virtual void SetErrorCallback(ErrorCallback callback) = 0;
21 [[nodiscard]] virtual bool Init() = 0;
22 [[nodiscard]] virtual bool VulkanSupported() = 0;
23 virtual void Terminate() = 0;
24};
25
26void Acquire(RuntimeState& state, Platform& platform);
27void Release(RuntimeState& state, Platform& platform) noexcept;
28[[nodiscard]] unsigned int NextWindowId(RuntimeState& state) noexcept;
29} // namespace pixelbullet::glfw_runtime_internal
Definition runtime_internal.h:16
Definition runtime_internal.h:10