26#include <aurore/platforms/desktop/desktop_platform.hpp>
44 void clear(NVGcolor color)
override;
50 bool readPixels(std::vector<unsigned char>* rgba,
int* width,
int* height)
override;
55 bool isValid()
const {
return nvgContext !=
nullptr; }
59 void createFramebuffer();
60 void destroyFramebuffer();
63 NVGcontext* nvgContext =
nullptr;
64 unsigned framebuffer = 0, colorBuffer = 0, depthStencilBuffer = 0;
65 void* eglDisplay =
nullptr;
66 void* eglContext =
nullptr;
67 void* glfwWindow =
nullptr;
79 void sendRumble(
unsigned short controller,
unsigned short lowFreqMotor,
unsigned short highFreqMotor)
override { }
91 std::set<AuroreKeyboardScancode> keys;
92 std::vector<RawTouchState> touches;
94 ButtonLatch leftLatch;
101 bool openForText(std::function<
void(std::string)> f, std::string headerText =
"",
102 std::string subText =
"",
int maxStringLength = 32, std::string initialText =
"",
104 bool openForNumber(std::function<
void(
long)> f, std::string headerText =
"",
105 std::string subText =
"",
int maxStringLength = 18, std::string initialText =
"",
106 std::string leftButton =
"", std::string rightButton =
"",
121 std::string
getName()
override {
return "Headless"; }
122 void createWindow(std::string title, uint32_t width, uint32_t height,
float windowXPos,
float windowYPos)
override;
140 void disableScreenDimming(
bool disable,
const std::string& reason,
const std::string& app)
override { screenDimmingOff = disable; }
167 std::string clipboard;
168 bool screenDimmingOff =
false;
169 bool closeRequested =
false;
Definition headless_platform.hpp:99
bool openForNumber(std::function< void(long)> f, std::string headerText="", std::string subText="", int maxStringLength=18, std::string initialText="", std::string leftButton="", std::string rightButton="", int kbdDisableBitmask=KeyboardKeyDisableBitmask::KEYBOARD_DISABLE_NONE) override
bool openForText(std::function< void(std::string)> f, std::string headerText="", std::string subText="", int maxStringLength=32, std::string initialText="", int kbdDisableBitmask=KeyboardKeyDisableBitmask::KEYBOARD_DISABLE_NONE) override
std::optional< std::string > nextText
Definition headless_platform.hpp:110
std::string lastHeader
Definition headless_platform.hpp:112
Definition headless_platform.hpp:38
HeadlessVideoContext(int width, int height)
NVGcontext * getNVGContext() override
Definition headless_platform.hpp:43
void resetState() override
~HeadlessVideoContext() override
void beginFrame() override
void setSwapInterval(int interval) override
Definition headless_platform.hpp:47
bool readPixels(std::vector< unsigned char > *rgba, int *width, int *height) override
void resize(int width, int height)
double getScaleFactor() override
Definition headless_platform.hpp:49
void clear(NVGcolor color) override
bool isValid() const
Definition headless_platform.hpp:55
Definition actions.hpp:25
AuroreKeyboardScancode
Definition input.hpp:44
ThemeVariant
The two sets of colours every theme has: light and dark.
Definition theme.hpp:37
@ KEYBOARD_DISABLE_NONE
Definition ime.hpp:29
ControllerButton
Definition input.hpp:179
@ _BUTTON_MAX
Definition input.hpp:209
ControllerAxis
Definition input.hpp:214
@ _AXES_MAX
Definition input.hpp:224
Definition geometry.hpp:26