Files & Folders
The files & folders that contributed content to this site are:
| include | |
| include/ext | |
| include/ext/glfw | |
| include/ext/glfw/app | |
| GLFWApplication.ixx | GLFW-specific Application implementation |
| GLFWFactory.ixx | Factory functions for creating GLFW-based Application and Window instances |
| GLFWRAIIGuard.ixx | RAII guard class to initialize/terminate GLFW |
| include/ext/glfw/input | |
| GLFWGamepadLookup.ixx | GLFW gamepad mapping helpers |
| GLFWInputAdapter.ixx | GLFW-based InputAdapter implementation |
| GLFWKeyLookup.ixx | GLFW key code to `helios::input::types::Key` mapping |
| include/ext/glfw/window | |
| GLFWWindow.ixx | GLFW-based Window implementation |
| GLFWWindowConfig.ixx | GLFW-specific window configuration structures |
| GLFWWindowUserPointer.ixx | Helper storing user pointer data for GLFW windows |
| include/ext/imgui | ImGui integration for debug overlays and developer tools |
| include/ext/imgui/widgets | |
| _module.ixx | Aggregate module for ImGui widgets |
| CameraWidget.ixx | ImGui widget for controlling and configuring camera parameters |
| FpsWidget.ixx | ImGui widget for displaying and configuring FPS metrics and frame pacing |
| GamepadSettingsWidget.ixx | ImGui widget for configuring gamepad input settings |
| GamepadWidget.ixx | ImGui widget for visualizing real-time gamepad input state |
| LogWidget.ixx | ImGui widget for displaying log messages in a scrollable text area |
| MainMenuWidget.ixx | ImGui main menu bar widget with application settings |
| _module.ixx | |
| ImGuiBackend.ixx | Abstract backend interface for ImGui integration with rendering/windowing systems |
| ImGuiGlfwOpenGLBackend.ixx | GLFW+OpenGL backend implementation for ImGui rendering |
| ImGuiLogSink.ixx | Log sink that forwards messages to a LogWidget |
| ImGuiOverlay.ixx | Manages a collection of ImGui widgets and renders them using a backend |
| ImGuiWidget.ixx | Base interface for ImGui-based debug and UI widgets |
| include/ext/opengl | |
| include/ext/opengl/rendering | |
| include/ext/opengl/rendering/model | |
| OpenGLMesh.ixx | OpenGL-specific Mesh implementation and buffer management |
| include/ext/opengl/rendering/shader | |
| OpenGLShader.ixx | OpenGL implementation of shader program management |
| OpenGLUniformLocationMap.ixx | Maps shader uniform semantics to OpenGL uniform locations |
| OpenGLDevice.ixx | OpenGL-specific RenderingDevice implementation |
| include/helios | |
| include/helios/app | |
| include/helios/app/controller | |
| _module.ixx | |
| BasicWindowRenderingController.ixx | Controller implementation for basic window rendering management |
| Controller.ixx | Base class for application controllers that integrate subsystems |
| WindowRenderingController.ixx | Controller coordinating rendering for a window |
| _module.ixx | Application module exports |
| Application.ixx | Entry point and central manager for helios applications |
| include/helios/core | |
| include/helios/core/data | |
| _module.ixx | Aggregate module for helios::core::data namespace |
| ReadBuffer.ixx | Read-only buffer for the double-buffering pattern |
| TypeIndexedDoubleBuffer.ixx | Double-buffered, type-indexed message system for decoupled inter-system communication |
| TypeIndexer.ixx | Utility for generating unique type indices at runtime |
| WriteBuffer.ixx | Write-only buffer for the double-buffering pattern |
| _module.ixx | Facade module for helios::core |
| Transform.ixx | Represents a 3D transformation consisting of translation, rotation and scale |
| include/helios/engine | |
| include/helios/engine/game | |
| include/helios/engine/game/commands | |
| _module.ixx | Aggregate module for helios::engine::game::commands namespace |
| Aim2DCommand.ixx | Command for applying 2D aiming direction to GameObjects |
| HeadingCommand.ixx | Command for updating the heading of a GameObject |
| Move2DCommand.ixx | Command for applying directional 2D movement to a GameObject |
| ShootCommand.ixx | Command for triggering shooting actions on GameObjects |
| include/helios/engine/game/components | |
| include/helios/engine/game/components/gameplay | |
| _module.ixx | Aggregate module for helios::engine::game::components::gameplay namespace |
| Aim2DComponent.ixx | Component for handling 2D aiming direction |
| ShootComponent.ixx | Component for handling projectile shooting mechanics |
| include/helios/engine/game/components/input | |
| _module.ixx | Aggregate module for helios::engine::game::components::input namespace |
| TwinStickInputComponent.ixx | Input component for twin-stick gamepad controls |
| include/helios/engine/game/components/model | |
| _module.ixx | Aggregate module for helios::engine::game::components::model namespace |
| ModelAabbComponent.ixx | Component for storing the canonical AABB of a model |
| include/helios/engine/game/components/physics | |
| _module.ixx | Aggregate module for helios::engine::game::components::physics namespace |
| AabbColliderComponent.ixx | Component for Axis-Aligned Bounding Box (AABB) collision detection |
| CollisionComponent.ixx | Component for layer-based collision detection and event generation |
| DirectionComponent.ixx | Component for storing a normalized direction vector |
| HeadingComponent.ixx | Component for managing entity heading and rotation physics |
| LevelBoundsBehaviorComponent.ixx | Component defining behavior when an entity interacts with level boundaries |
| Move2DComponent.ixx | Component for 2D physics-based movement |
| RotationStateComponent.ixx | Component for managing composite rotation state from heading and spin |
| ScaleComponent.ixx | Component for managing the dimensions of an entity |
| SpinComponent.ixx | Component for applying continuous spin rotation to an entity |
| TransformComponent.ixx | Component for managing local and world transformations of a GameObject |
| TranslationStateComponent.ixx | Component for storing the current translation (position) state of an entity |
| include/helios/engine/game/components/rendering | |
| _module.ixx | Aggregate module for helios::engine::game::components::rendering namespace |
| RenderableComponent.ixx | Component for associating a renderable object with an entity |
| include/helios/engine/game/components/scene | |
| _module.ixx | Aggregate module for helios::engine::game::components::scene namespace |
| SceneNodeComponent.ixx | Component for linking GameObjects to the scene graph |
| _module.ixx | Aggregate module for helios::engine::game::components namespace |
| include/helios/engine/game/event | |
| _module.ixx | Aggregate module for helios::engine::game::event namespace |
| GameLoopEventBus.ixx | Type-safe event bus for inter-system communication within the game loop |
| SolidCollisionEvent.ixx | Event dispatched when two solid colliders physically collide |
| TriggerCollisionEvent.ixx | Event dispatched when a GameObject enters a trigger volume |
| include/helios/engine/game/systems | |
| include/helios/engine/game/systems/gameplay | |
| _module.ixx | Aggregate module for helios::engine::game::systems::gameplay namespace |
| GameObjectSpawnSystem.ixx | System for spawning GameObjects from a pool into the level |
| ProjectilePoolSystem.ixx | Object pool for efficient projectile management in game systems |
| include/helios/engine/game/systems/physics | |
| _module.ixx | Aggregate module for helios::engine::game::systems::physics namespace |
| BoundsUpdateSystem.ixx | System for updating collider bounds based on world transforms |
| ComposeTransformSystem.ixx | System for composing final transforms from separate state components |
| GridCollisionDetectionSystem.ixx | Spatial-partitioning based collision detection using a uniform 3D grid |
| HeadingSystem.ixx | System for updating entity heading and rotation |
| LevelBoundsBehaviorSystem.ixx | System for handling entity behavior at level boundaries |
| Move2DSystem.ixx | System for processing 2D movement physics |
| ScaleSystem.ixx | System for applying scale transformations based on ScaleComponent |
| SpinSystem.ixx | System for applying continuous spin rotation to entities |
| include/helios/engine/game/systems/post | |
| _module.ixx | Aggregate module for helios::engine::game::systems::post namespace |
| ScaleClearSystem.ixx | System for resetting dirty flags on ScaleComponents |
| TransformClearSystem.ixx | System for resetting dirty flags on TransformComponents |
| include/helios/engine/game/systems/scene | |
| _module.ixx | Aggregate module for helios::engine::game::systems::scene namespace |
| SceneSyncSystem.ixx | System for synchronizing gameplay transforms with the scene graph |
| _module.ixx | Aggregate module for helios::engine::game::systems namespace |
| _module.ixx | Aggregate module for helios::engine::game namespace |
| CallbackSpawnStrategy.ixx | Callback-based spawn strategy for flexible GameObject initialization |
| Command.ixx | Abstract base class for game commands following the Command pattern |
| CommandBuffer.ixx | Queue for deferred execution of game commands |
| Component.ixx | Base class for components attached to GameObjects |
| GameObject.ixx | Base class for interactive game entities with transform capabilities |
| GameObjectFilter.ixx | Enumeration for filtering GameObjects in queries |
| GameObjectPool.ixx | Object pool for efficient GameObject management and recycling |
| GameWorld.ixx | Central registry for managing game entities |
| InputSnapshot.ixx | Immutable snapshot of input state at a specific point in time |
| Level.ixx | Defines the Level class representing a game level or stage |
| SpawnCondition.ixx | Abstract interface for determining spawn timing and quantity |
| SpawnStrategy.ixx | Abstract interface for GameObject spawning strategies |
| System.ixx | Base class for game systems that operate on the GameWorld |
| TimerSpawnCondition.ixx | Time-based spawn condition for interval-controlled spawning |
| Updatable.ixx | Interface for components that require per-frame updates |
| UpdateContext.ixx | Context struct passed to components during per-frame updates |
| include/helios/engine/tooling | |
| _module.ixx | Aggregate module for helios::engine::tooling namespace |
| FpsMetrics.ixx | Module defining the FpsMetrics class for frame rate analysis and monitoring |
| FramePacer.ixx | Module defining the FramePacer class for frame rate control and timing synchronization |
| FrameStats.ixx | Module defining the FrameStats structure for frame timing information |
| include/helios/engine/units | |
| units.ixx | Canonical length units and conversion helpers for helios to keep spatial and temporal data consistent across modules |
| _module.ixx | Aggregate module for helios::engine namespace |
| include/helios/event | |
| _module.ixx | Event system module exports |
| BasicEventManager.ixx | Default implementation of an EventManager |
| DequeEventQueue.ixx | Double-ended event queue implementation |
| Dispatcher.ixx | Dispatches events to registered callbacks |
| Event.ixx | Base class for events in the helios framework |
| EventManager.ixx | High-level event manager dispatching events to listeners |
| EventQueue.ixx | Thread-safe queue for Event objects |
| include/helios/input | |
| include/helios/input/gamepad | |
| _module.ixx | Aggregate module for gamepad input handling and configuration |
| DeadzoneStrategy.ixx | Abstract base class for gamepad axis deadzone normalization strategies |
| GamepadSettings.ixx | Configuration settings for gamepad input processing |
| GamepadState.ixx | Representation of current gamepad input state |
| RadialDeadzoneStrategy.ixx | Radial (circular) deadzone strategy for gamepad analog stick input |
| include/helios/input/types | |
| _module.ixx | Input type definitions module exports |
| Gamepad.ixx | Identifiers for supported gamepads |
| Key.ixx | Key code definitions used across input adapters |
| _module.ixx | Input handling module exports |
| InputAdapter.ixx | Abstract interface for platform-specific input adapters |
| InputManager.ixx | InputManager providing access to various input states |
| include/helios/math | |
| include/helios/math/concepts | |
| _module.ixx | Math concepts module exports |
| Numeric.ixx | |
| include/helios/math/traits | |
| FloatingPointTypeTrait.ixx | |
| include/helios/math/transform | |
| _module.ixx | Module exports for transformation utilities |
| camera.ixx | Camera transform helpers |
| model.ixx | Model transform helper functions |
| include/helios/math/types | |
| _module.ixx | Module exports for vector and matrix type definitions |
| aabb.ixx | Axis-Aligned Bounding Box (AABB) type and transformations |
| mat4.ixx | 4x4 matrix type and utilities |
| vec2.ixx | 2D vector type and utility functions |
| vec3.ixx | 3D vector type and utilities |
| vec4.ixx | 4D vector type and utilities |
| _module.ixx | Module exports for mathematical types and utilities |
| TransformType.ixx | Defines transform inheritance flags for scene graph hierarchies |
| utils.ixx | Misc math utility functions |
| include/helios/rendering | |
| include/helios/rendering/asset | |
| include/helios/rendering/asset/shape | |
| include/helios/rendering/asset/shape/basic | |
| _module.ixx | Module exports for basic geometric primitive shapes |
| Circle.ixx | Basic circle shape for rendering |
| Cube.ixx | Basic cube shape for rendering |
| Ellipse.ixx | Basic ellipse shape for 2D rendering |
| Grid.ixx | Basic grid shape for rendering |
| Line.ixx | Basic line shape for rendering |
| Rectangle.ixx | Basic rectangle shape for rendering |
| Triangle.ixx | Basic Triangle (line) shape for rendering |
| _module.ixx | Module exports for shape definitions for rendering assets |
| Shape.ixx | Interface for simple geometric shapes used for testing and debugging |
| _module.ixx | Module exports for rendering model assets |
| include/helios/rendering/model | |
| include/helios/rendering/model/config | |
| _module.ixx | Module exports for configuration structures for model/material |
| MaterialProperties.ixx | Default material properties used by materials and instances |
| MaterialPropertiesOverride.ixx | Overrides for material properties to customize rendering parameters |
| MeshConfig.ixx | Mesh configuration including primitive type |
| PrimitiveType.ixx | Enum of primitive types for mesh rendering |
| _module.ixx | Module exports for Model-related rendering constructs |
| Material.ixx | Material abstraction: shader + material properties |
| Mesh.ixx | Mesh abstraction: immutable vertex/index data and configuration |
| include/helios/rendering/shader | |
| _module.ixx | Module exports for shader abstractions and utilities |
| Shader.ixx | Abstraction for a compiled shader program |
| UniformSemantics.ixx | Definitions of uniform semantics used by shaders |
| UniformValueMap.ixx | Mapping of uniform names to values used by shader programs |
| _module.ixx | Module exports for rendering subsystem with primitives and device abstractions |
| ClearFlags.ixx | Enum class defining bitmask flags for clearing render buffers before drawing |
| Renderable.ixx | Representative of a configurable Renderable rendered by the underlying GL API |
| RenderCommand.ixx | Representation of a low-level render command |
| RenderingDevice.ixx | Low-level rendering device abstraction (OpenGL/Vulkan/etc.) |
| RenderPass.ixx | Abstraction representing a render pass (framebuffer, attachments, etc.) |
| RenderPassFactory.ixx | Factory for creating RenderPass objects from scene snapshots |
| RenderPrototype.ixx | An immutable, shared prototype of a renderable object |
| RenderQueue.ixx | Container for enqueued render commands and renderables |
| RenderTarget.ixx | Defines the RenderTarget class, which encapsulates a destination for rendering operations |
| RenderTargetFwd.ixx | Provides a forward declaration for the helios::rendering::RenderTarget class |
| Vertex.ixx | Vertex description and utilities for rendering |
| Viewport.ixx | Defines the Viewport class, which represents a rectangular area for rendering within a RenderTarget |
| include/helios/scene | |
| _module.ixx | Module exports for scene-graph-related functionality |
| Camera.ixx | Defines the Camera class providing view and projection matrices |
| CameraSceneNode.ixx | Camera scene node adapter providing view and projection matrices within a scene graph |
| CullNoneStrategy.ixx | Frustum culling strategy that returns all nodes (no culling) |
| FrustumCullingStrategy.ixx | Abstract base class for implementing frustum culling strategies |
| Scene.ixx | Represents a hierarchical SceneGraph that organizes all renderable and non-renderable objects within a scene |
| SceneFwd.ixx | |
| SceneNode.ixx | Scene graph node representing a transform and optional renderable |
| Snapshot.ixx | Represents an immutable snapshot of a SceneGraph at a given point in time |
| SnapshotItem.ixx | Snapshot item bundling a Renderable reference and its world matrix |
| include/helios/util | |
| include/helios/util/io | |
| _module.ixx | Module exports for IO utilities |
| BasicStringFileReader.ixx | Basic file-to-string reader implementation |
| StringFileReader.ixx | Abstract base class for reading file contents into a string |
| include/helios/util/log | |
| _module.ixx | Module exports for logging |
| ConsoleSink.ixx | Log sink that writes to stdout |
| Logger.ixx | Simple synchronous logger with configurable output sinks |
| LogManager.ixx | Central manager for scoped loggers with configurable sinks |
| LogSink.ixx | Abstract interface for log output destinations |
| include/helios/util/time | |
| _module.ixx | |
| Stopwatch.ixx | A high-resolution timer based on std::chrono::steady_clock |
| _module.ixx | Module exports for non-domain-specific utility functions |
| Colors.ixx | Standard color constants as vec4f (RGBA) |
| Guid.ixx | Lightweight GUID (globally unique identifier) implementation |
| Random.ixx | Utility class for pseudo-random number generation |
| include/helios/window | |
| include/helios/window/event | |
| _module.ixx | Module exports for window event types and handlers |
| FrameBufferResizeEvent.ixx | Event representing a change in the framebuffer size |
| WindowEvent.ixx | Abstract base class for window-related events |
| _module.ixx | Module exports for window management and configuration |
| Window.ixx | Abstract window interface used by the helios framework |
| WindowConfig.ixx | Window creation and initialization configuration |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md | |
| README.md |
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.