Classes
The classes, structs, union and interfaces used by this project are:
| C Application | Class providing the entry point for a helios application | 
| C GLFWApplication | An Application implementation for glfw-based environments | 
| C Controller | Abstract base class for application controllers | 
| C WindowRenderingController | Abstract base controller for handling window related events | 
| C BasicWindowRenderingController | Basic implementation of a WindowRenderingController | 
| C Dispatcher | A generic event Dispatcher for type-safe event handling | 
| C Event | Base class for events in the helios framework | 
| C WindowEvent | Abstract base class for Window related events | 
| C FrameBufferResizeEvent | Event representing a change in the framebuffer's size | 
| C EventManager | An abstract EventManager managing the buffering and dispatching of events, acting as a central hub for event management | 
| C BasicEventManager | Basic implementation of the EventManager | 
| C EventQueue | Abstract base class defining an interface for an EventQueue | 
| C DequeEventQueue | Concrete implementation of an EventQueue that uses a Deque as its underlying queue strategy. Adding and removing events follows a FIFO strategy | 
| C FrustumCullingStrategy | Abstract base class for implementing frustum culling strategies | 
| C CullNoneStrategy | A default FrustumCullingStrategy that simply returns all SceneNodes found, e.g. no culling is applied | 
| C GLFWFactory | A factory class for creating pre-configured glfw-specific application components | 
| C GLFWRAIIGuard | A RAII Guard for GLFW | 
| S GLFWWindowUserPointer | A structure to hold user defined data associated with a GLFWwindow | 
| C Guid | Representative of a Globally Unique Identifier | 
| C InputAdapter | Abstract interface for querying various input states | 
| C GLFWInputAdapter | InputAdapter implementation for a GLFWWindow | 
| C InputManager | InputManager providing access to various input states | 
| C Logger | Simple Logger implementation | 
| C LogManager | LogManger for managing various scoped Loggers | 
| S mat4<T> | Represents a 4x4 matrix, stored in column-major order | 
| C Material | Representative of a parametrizable Material instance. A Material instance contains a reference to its raw shared Shader and optionally MaterialData. A Material instance allows for individual configurations | 
| C MaterialData | Immutable MaterialData | 
| C Mesh | Representative of a renderable 3D mesh. A Mesh instance contains a reference to its raw shared MeshData and allows for individual configurations. Concrete implementations will handle resource management | 
| C OpenGLMesh | Representative of an OpenGLMesh. This class manages the OpenGL Vertex Array Object (VAO), the Vertex Buffer Object (VBO) and Element Buffer Object (EBO) handles. The raw MeshData is uploaded to the GPU, preparing it for subsequent rendering commands / draw calls | 
| C MeshData | Representative of vertex data and indices provided by geometric shapes. MeshData contains references to immutable, shared Vertex Data and indices | 
| C OpenGLUniformLocationMap | Manages the mapping between OpenGL uniform semantics and their locations in an underlying OpenGL shader | 
| C Renderable | Representative of a configurable Renderable rendered by the underlying GL API | 
| C OpenGLRenderable | An OpenGL specific implementation of a Renderable | 
| C RenderCommand | DTO for storing rendering specific command information to be passed to the RenderQueue | 
| C RenderingDevice | Abstract interface for low level rendering device | 
| C OpenGLDevice | OpenGL RenderingDevice representative | 
| C RenderPass | Represents a single RenderPass under a set of specific uniform values | 
| C RenderPassFactory | A factory class for constructing `RenderPass` objects and populate their `RenderQueue`s based on a `helios::scene::Snapshot` | 
| C RenderQueue | Manages a collection of `RenderCommand` objects for a single rendering pass | 
| C Scene | Represents a hierarchical SceneGraph that organizes all renderable and non-renderable objects within a scene | 
| S SceneGraphKey | SceneGraphKey as passkey idiom for accessing `setWorldTransform()`. All friend classes are able to construct the SceneGraphKey for accessing pass key guarded methods like `setWorldTransform` | 
| C SceneNode | Represents a SceneNode within a SceneGraph | 
| C Camera | Represents a camera for perspective or orthographic projection, deriving from SceneNode to allow for spatial positioning and transformation within the scene graph | 
| C Shader | Abstract representation of a Shader program (e.g. composed of vertex/fragment shader) | 
| C OpenGLShader | An OpenGL-specific implementation of a Shader program, consisting of a vertex and a fragment shader | 
| S Shape | Struct representing geometric primitives and indices for various shapes. provides immutable, shared access to vertices and indices of the represented geometric shape | 
| S Cube | Basic Cube Shape | 
| C Snapshot | Represents an immutable snapshot of a SceneGraph at a given point in time | 
| S SnapshotItem | Structure for representing a snapshot item of a renderable's object state at a specific point in time | 
| C StringFileReader | Abstract base class for reading file contents into a string | 
| C BasicStringFileReader | Basic implementation of a string file reader | 
| C Tickable | |
| C Transform | Represents a 3D transformation consisting of translation, rotation and scale. This class encapsulates the components of a local transform for SceneNodes. It uses lazy evaluation to compute the final transform. The current scale, translation and rotation is queryable. Changing the transformation is always considered against an "origin" of an object, that ist, a 4x4 identity matrix | 
| C UniformValueMap | Manages a collection of values for mapping them to their UniformSemantics identifier | 
| S vec2<T> | Represents a 2-dimensional vector of the generic type <T> | 
| S vec3<T> | Represents a 3-dimensional vector of the generic type <T> | 
| S vec4<T> | Represents a 4-dimensional vector of the generic type <T> | 
| S Vertex | Represents a standard vertex with position, normal, and texture coordinates | 
| C Window | Abstract base class representing a generic window | 
| C GLFWWindow | An OpenGL focused window implementation using GLFW | 
| S WindowConfig | Configuration structure for creating and initializing a Window | 
| S GLFWWindowConfig | Configuration structure for a GLFWWindow | 
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.