GLFWApplication.ixx File
GLFW-specific Application implementation. More...
Included Headers
#include <glad/gl.h>
#include <glfw/glfw3.h>
#include <memory>
#include <vector>
#include <stdexcept>
#include <format>
#include <helios.ext.glfw.app.GLFWRAIIGuard>
#include <helios.rendering.RenderTarget>
#include <helios.event.EventManager>
#include <helios.ext.glfw.window.GLFWWindow>
#include <helios.rendering.RenderingDevice>
#include <helios.ext.glfw.window.GLFWWindowConfig>
#include <helios.input.InputManager>
#include <helios.window.Window>
#include <helios.window.WindowConfig>
#include <helios.app.Application>
Namespaces Index
| namespace | helios |
| namespace | ext |
|
Platform-specific extensions and backend implementations. More... | |
| namespace | glfw |
|
GLFW-specific implementations. More... | |
| namespace | app |
|
GLFW application infrastructure. More... | |
Classes Index
| class | GLFWApplication |
|
An Application implementation for glfw-based environments. More... | |
Description
GLFW-specific Application implementation.
File Listing
The file content with the documentation metadata removed is:
29export namespace helios::ext::glfw::app {
36 class GLFWApplication : public helios::app::Application {
48 GLFWRAIIGuard glfwRaiiGuard_;
58 explicit GLFWApplication(
100 const helios::ext::glfw::window::GLFWWindowConfig& cfg
102 auto window = std::make_unique<helios::ext::glfw::window::GLFWWindow>(std::move(renderTarget), cfg);
104 if (const auto glfw_window = window.get()) {
128 windowList_.emplace_back(std::move(window));
130 return *dynamic_cast<helios::ext::glfw::window::GLFWWindow*>(windowList_.back().get());
141 auto const* tmp_cfg = dynamic_cast<helios::ext::glfw::window::GLFWWindowConfig const*>(&cfg);
148 return createWindow(std::move(renderTarget), *tmp_cfg);
161 * @throws std::invalid_argument If `win` is not a `GLFWWindow` or not owned by this application.
163 void setCurrent(helios::window::Window& win) override {
170 if (const auto glfw_window = dynamic_cast<helios::ext::glfw::window::GLFWWindow*>(&win)) {
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.