Skip to main content

helios::glfw

GLFW platform integration for the helios engine modules.

Overview

helios::glfw provides a concrete GLFW-backed implementation for platform initialization, native window lifecycle, resize propagation, buffer swapping, and close-request handling.

Features

  • GLFW runtime initialization and shutdown handling
  • Native window creation from engine window commands
  • Framebuffer/window resize propagation
  • Buffer swap command processing
  • Typed GLFW callback user-pointer bridge
  • Window-close polling system

Module surface

AreaPublic modules / APIs
Platform managerGLFWPlatformManager
ComponentsGLFWWindowHandleComponent, GLFWWindowUserPointerComponent
SystemsGLFWWindowCloseSystem
Typeshelios.glfw.types
Aggregatorhelios.glfw

Usage

C++ module

import helios.glfw;

Platform architecture

GLFWPlatformManager<TRenderPlatform, THandle, TStateCommandBuffer, TPlatformCommandBuffer> receives platform/window commands, stores pending work, and applies it in flush(UpdateContext&).

GLFW-native data is attached to window entities through ECS components:

  • GLFWWindowHandleComponent<THandle> stores the native GLFWwindow*
  • GLFWWindowUserPointerComponent<THandle, TPlatformCommandBuffer> stores typed callback payload

GLFWWindowCloseSystem<THandle, TCommandBuffer> scans shown active windows and queues WindowCloseCommand<THandle> when GLFW reports a close request.

CMake

Build and install:

cmake -S . -B build -DHELIOS_GLFW_ENABLE_PACKAGE=ON -DCMAKE_INSTALL_PREFIX="$PWD/install"
cmake --build build
cmake --install build

Consume from another project:

find_package(helios-engine CONFIG REQUIRED)
find_package(helios-glfw CONFIG REQUIRED)
target_link_libraries(your_target PRIVATE helios::glfw)

Configure a consumer against an installed prefix:

cmake -S . -B build -DCMAKE_PREFIX_PATH="/path/to/helios-prefix"
cmake --build build

Development

Run the regular CMake build from the repository root:

cmake -S . -B build
cmake --build build