Raven Engine v0.1
A modern 3D Game Engine
Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 1234]
 CCrux::AABBAxis-aligned bounding box defined by a min and max corner in 3D space
 CRaven::AllocationRepresents a single allocation record
 CRaven::MemoryTracker::AllocationInfo
 CRaven::AllocatorTraits< T >Compile-time traits for determining allocation strategy of T
 CRaven::AmbientOcclusionPassHorizon-Based Ambient Occlusion (HBAO) screen-space pass
 CRaven::ApplicationSpecificationHolds initial configuration for the Application
 CRaven::ArgParser
 CRaven::AssetKey
 CRaven::AssetManager
 CRaven::AssetManagerBase
 CRaven::AssetMeta
 CRaven::AssetSharedCache
 CRaven::AssetUniqueCache
 CRaven::Audio
 CRaven::AudioDeviceInfo
 CRaven::AudioSettings
 CRaven::AudioSys
 CRaven::BodyTransformPosition and orientation of a physics body, expressed in world space
 CCrux::BoundingSphereBounding sphere defined by a center point and radius
 CJPH::BroadPhaseLayerInterface
 CRaven::BufferA simple container for a raw memory buffer
 CRaven::BufferElementDescribes a single element in a vertex buffer layout
 CRaven::CacheKey< Callable, ParamsTuple >Determines the cache key type for a given callable and parameter tuple
 CRaven::CameraBase class for camera implementations
 CRaven::CameraComponentRuntime camera component used by the scene renderer
 CRaven::CameraComponentDataSerializable data describing camera configuration
 CRaven::CameraGPU
 CRaven::Hardware::CapabilitiesInstruction-set capabilities
 CRaven::ChunkInfo
 CRaven::TextureSlot::Compare
 CRaven::ComponentBaseAbstract base class for all components
 CRaven::ComponentDataAggregates optional component data for serialization
 CRaven::ComputePassSpecification
 CRaven::ComputePipelineSpecification
 CRaven::ConfigurationManagerSingleton manager for application configuration files
 CRaven::ConsoleHandlerHandler that writes log messages to the console
 CRaven::ContainedTypeRegistrar< T >Base template for recursive contained-type registration
 CRaven::ContainedTypeRegistrar< std::array< T, N > >Registers the element type of a std::array
 CRaven::ContainedTypeRegistrar< std::unordered_map< T, N > >Registers the key and mapped types of a std::unordered_map
 CRaven::ContainedTypeRegistrar< std::vector< T > >Registers the element type of a std::vector
 CCrux::Detail::CosCoeffs< Degree >Polynomial coefficient table for cosine approximations on [-pi/4, pi/4]
 CCrux::Detail::CosCoeffs< 5 >Degree-5 cosine: cos(x) ~= c0 + c2*x^2 + c4*x^4
 CCrux::Detail::CosCoeffs< 7 >Degree-7 cosine: cos(x) ~= c0 + c2*x^2 + c4*x^4 + c6*x^6
 CCrux::Detail::CosCoeffs< 9 >Degree-9 cosine: cos(x) ~= c0 + c2*x^2 + c4*x^4 + c6*x^6 + c8*x^8
 CRaven::DataChunk
 CRaven::DeferredExecutionQueueManages deferred execution of callbacks
 CRaven::GeometryPass::DependenciesShared GPU resources injected at init time by SceneRenderer
 CRaven::DescriptorSetManagerManages Vulkan descriptor sets for a given render pass specification
 CRaven::DirectionalLightComponentRepresents a directional (sun-like) light source
 CRaven::DirectionalLightGPUGPU-side directional light data uploaded to the geometry pass UBO
 CRaven::EditorResources
 CRaven::EntityLightweight wrapper for manipulating a single entity within the ECS
 CRaven::EntityDataData structure representing an entity for serialization
 CRaven::EventBase event data container
 CRaven::EventQueueFixed-size, frame-based event queue
 CRaven::EventSlotFixed-size container for a single event
 CRaven::Expected< T >Template representing either a valid value or an error
 Cstd::false_type
 CRaven::FileHandlerHandler that writes log messages to a file
 CRaven::FileMeta
 CRaven::FixedFunction< Signature, StorageSize >Type-erased callable wrapper with small buffer optimization (SBO)
 CRaven::FixedFunction< R(Args...), StorageSize >
 CRaven::FMTChunk
 CRaven::FormatterUtility for formatting log messages with level and timestamp
 Cformatter
 CRaven::FramebufferAttachmentSpecificationDefines a collection of texture attachments for a framebuffer
 CRaven::FramebufferSpecificationConfiguration settings for creating or resizing a framebuffer
 CRaven::FramebufferTextureSpecificationDescribes a single texture attachment in a framebuffer
 CRaven::FrameworkCore application manager handling initialization, update loop, rendering, and shutdown
 CCrux::FrustumView frustum represented as six half-space planes
 CRaven::function_cache< Callable >Memoization wrapper for a stateless callable
 CRaven::function_traits< ReturnType(*)(Args...)>Specialization of function_traits for raw function pointers
 CRaven::function_traits< ReturnType(ClassType::*)(Args...) const >Specialization of function_traits for const (non-mutable) lambdas and functors
 CRaven::function_traits< ReturnType(ClassType::*)(Args...)>Specialization of function_traits for mutable lambdas and functors
 CRaven::GeometryPassForward+ geometry pass; the primary shading stage of the Illumine pipeline
 CRaven::GPUPointLightGPU-side point light descriptor. Layout must match the HLSL struct exactly (16-byte aligned)
 CRaven::GPUQuery
 CRaven::GPURegion
 CRaven::GPUSpotLightGPU-side spot light descriptor (reserved for post-v0.1 implementation)
 CRaven::GPUTimeSpan
 CRaven::Hardware::HardwareInfoOverall hardware info: CPU, cores, RAM, caps
 CRaven::has_type_in_tuple< T, Tuple >Checks whether a type T appears anywhere in a std::tuple type list
 Cstd::hash< Raven::AssetKey >
 Cstd::hash< Raven::MaterialHandle >
 Cstd::hash< Raven::TextureCubeFaces >
 Cstd::hash< Raven::TextureCubeSpecification >
 Cstd::hash< Raven::TypeID >Hash specialization for Raven::TypeID
 Cstd::hash< Raven::UUID >Hash function specialization for UUID
 CRaven::HBAOSettingsConfiguration for the Horizon-Based Ambient Occlusion (HBAO) pass
 CIDxcIncludeHandler
 CRaven::IgniteEntry point for the Ignite scripting module
 CRaven::IllumineRendererStatic facade for all renderer operations
 CRaven::ImageSpecificationDescribes the properties required to create or configure an Image2D resource
 CImGui_ImplWin32_Data
 CImGui_ImplWin32_ViewportData
 CRaven::InputProvides static methods to query keyboard and mouse state
 CRaven::InputContext
 CRaven::IrradiancePassConvolves an environment cubemap into a diffuse irradiance map for IBL
 CRaven::JobRepresents a job that encapsulates a task to be executed
 CRaven::JobQueue< T >A thread-safe queue for enqueuing and dequeuing jobs
 CRaven::LightCullPassForward+ tile-based light culling compute pass
 CRaven::LightCullSettingsDataPer-dispatch settings for the light culling compute shader
 CRaven::LightEnvironmentAggregated light data uploaded as a single SSBO each frame
 CRaven::LightSpaceDataGPU-side light-space transform uploaded to the geometry pass
 CRaven::LineVertex
 CRaven::LoadedModuleMetadata for a loaded script DLL and its shadow copy
 CRaven::LoggerCentral logging facility for the Raven engine
 CRaven::LogSettings
 CRaven::MalevolentAllocatorFixed-size chunk pool allocator
 CRaven::MaterialAssetSerializable description of a material
 CRaven::MaterialHandleOpaque handle referencing a material in the registry
 CCrux::Matrix< T, Rows, Cols >Generic fixed-size matrix container
 CRaven::MemoryManagerCentral singleton for managing engine memory allocators
 CRaven::MeshAssetDataSerializable mesh reference
 CRaven::MeshVertexVertex structure used for the Mesh's representation
 Cglz::meta< Crux::quatf >
 Cglz::meta< Crux::vec3 >
 Cglz::meta< Raven::AssetMeta >
 Cglz::meta< Raven::CameraComponentData >
 Cglz::meta< Raven::FileMeta >
 Cglz::meta< Raven::MaterialAsset >
 Cglz::meta< Raven::RigidBodyComponent >
 Cglz::meta< Raven::ScriptComponent >
 Cglz::meta< Raven::UUID >
 CJPH::ObjectLayerPairFilter
 CJPH::ObjectVsBroadPhaseLayerFilter
 CRaven::PanelHandlerHandler that writes log messages to a Panel in the UI
 CRaven::PendingEntryIntrusive linked-list node for a single deferred type registration
 CRaven::PendingLifecycleEntry
 CRaven::PendingLifecycleListSingly-linked list of all pending lifecycle registrations in the DLL
 CRaven::PendingMemberEntryIntrusive linked-list node for a single deferred member registration
 CRaven::PendingMemberRegistration< Parent, Member >Static-init helper that records a single reflected member variable
 CRaven::PendingMemberRegistrationListSingly-linked list of all pending member registrations in the DLL
 CRaven::PendingRegistration< T >Static-init helper that records a script class for type and lifecycle registration
 CRaven::PendingRegistrationListRoot pending list. Flushing this also flushes members and lifecycles
 CPeningLifecycleEntryIntrusive linked-list node for a single deferred lifecycle registration
 CRaven::PhysicsConfigurationGlobal configuration for the Pulsar physics runtime
 CRaven::PhysicsWorldOwns and drives a single Jolt physics simulation scene
 CRaven::PipelineSpecificationConfiguration parameters to describe a rendering pipeline
 CRaven::PipelineStatisticsHolds GPU statistics gathered from pipeline execution
 CRaven::PointLightComponentOmnidirectional light source with attenuation
 CRaven::PrepassDepth and view-space normals prepass
 CRaven::ProjectConfigHolds basic configuration data for a project
 CRaven::ProjectSerializerHandles serialization and deserialization of Project configurations
 CRaven::PulsarSingleton facade for the Pulsar physics runtime
 CRaven::PushConstant
 CRaven::ShaderResource::PushConstantRangeRepresents a push constant range used in shaders
 CRaven::QuadVertex
 CCrux::Quat< T >Templated quaternion representation
 CRaven::QueueFamilyIndicesHolds the indices of Vulkan queue families used for graphics and presentation
 CCrux::RandomStatic wrapper around RandomEngine for convenience
 CCrux::RandomEngineHigh-performance 64-bit state, 32-bit output PRNG based on PCG32
 CRaven::Ref< T >Intrusive reference-counted smart pointer
 CRaven::RefCountedBase class for intrusive reference-counted objects
 CRaven::VulkanShader::ReflectionDataReflection data extracted from the shader code
 CRaven::RegisterMember< Parent, Member >Register a member variable for reflection
 CRaven::RegisterType< T >
 CRegisterTypeOnConstructHelper for auto-registration of types on static construction
 CRaven::RegistryCentral manager for component registration and entity-component mapping
 CRaven::RenderCommandQueue
 CRaven::Renderer2D
 CRaven::Renderer2DData
 CRaven::RendererConfigConfiguration options controlling renderer behavior at startup
 CRaven::RendererDataRuntime statistics and shared renderer resources
 CRaven::RendererFeaturesToggleable renderer features controlled from the editor settings panel
 CRaven::RenderPassInputDescribes a single input resource for a render pass, including type, binding indices, and resource handles
 CRaven::RenderPassSpecificationHolds the essential configuration for a RenderPass
 CRaven::RenderResourceRegistryManages shader hot-reload subscriptions and coordinates pipeline/renderpass rebuilds
 CRaven::RIFFChunk
 CRaven::RigidBodyComponentPhysics body descriptor used for simulation
 CRaven::RigidBodyDescFull description used to construct a rigid body and its collider
 CRaven::SceneDataTop-level structure representing the entire scene data
 CRaven::SceneRendererOrchestrates the full Illumine render pipeline for a single scene
 CRaven::SceneSerializerSerializes and deserializes a Scene to/from disk
 CRaven::SchemaInfo
 CRaven::Scope< T >Exclusive-ownership smart pointer
 CRaven::ScopedBufferA wrapper around Buffer that ensures automatic release of memory when it goes out of scope
 CRaven::UI::ScopedColorRAII helper to push and pop a single ImGui style color
 CRaven::UI::ScopedColorStackRAII helper to push and pop multiple ImGui style colors in one go. Expects a list of pairs: (ImGuiCol colorID, ColorValue)
 CRaven::UI::ScopedFontRAII helper to push and pop an ImGui font
 CRaven::UI::ScopedIDRAII helper to push and pop an ImGui ID. Supports any type convertible to ImGuiID
 CRaven::UI::ScopedItemFlagsRAII helper to push and pop ImGui item flags
 CRaven::UI::ScopedStyleRAII helper to push and pop a single ImGui style variable. Pushes the style var on construction, pops on destruction
 CRaven::UI::ScopedStyleStackRAII helper to push and pop multiple ImGui style variables in one go. Expects a list of pairs: (ImGuiStyleVar, Value)
 CRaven::ScopedTimerScoped RAII timer that automatically records and stores timing data
 CRaven::ScopeWithAllocator< T >Scoped smart pointer that uses a specific allocator
 CRaven::ScriptBaseAbstract base class for all user-authored native scripts
 CRaven::ScriptComponentBinds a runtime script instance to an entity
 CRaven::ScriptContext
 CRaven::ScriptFieldSerializerConverts reflected script fields between their in-memory representation and a string form
 CRaven::ScriptLifecycleFactory and destructor callbacks for a single registered script type
 CRaven::ScriptRegistrySingleton that owns all loaded script DLLs and their type registrations
 CRaven::ScriptRuntimeDrives the per-frame lifecycle of all native scripts within a scene
 CRaven::Semaphores
 CRaven::ShaderBufferRepresents a shader buffer (e.g., uniform or constant buffer)
 CRaven::ShaderResource::ShaderDescriptorRepresents an individual shader descriptor binding
 CRaven::ShaderResource::ShaderDescriptorSetGroups multiple descriptors into a descriptor set
 CRaven::ShaderResourceDeclarationDeclares any shader resource including buffers and textures
 CRaven::ShaderSettingsDataPer-draw shader knobs uploaded to the geometry pass settings UBO
 CRaven::ShadowPassRenders a depth-only shadow map from the scene's directional light
 CRaven::ShadowSettingsConfiguration for the directional light shadow map pass
 CCrux::Detail::SinCoeffs< Degree >Polynomial coefficient table for sine approximations on [-pi/4, pi/4]
 CCrux::Detail::SinCoeffs< 5 >Degree-5 sine: sin(x) ~= c1*x + c3*x^3 + c5*x^5
 CCrux::Detail::SinCoeffs< 7 >Degree-7 sine: sin(x) ~= c1*x + c3*x^3 + c5*x^5 + c7*x^7
 CCrux::Detail::SinCoeffs< 9 >Degree-9 sine: sin(x) ~= c1*x + c3*x^3 + c5*x^5 + c7*x^7 + c9*x^9
 CRaven::SkyboxPassRenders the environment cubemap as a background skybox
 CRaven::SkylightComponentImage-based lighting environment component
 CRaven::SkylightDataSerializable skylight configuration
 CRaven::SkylightGPUGPU-side skylight data uploaded to the geometry pass UBO
 CRaven::Slot
 CRaven::StackAllocator< T >Stack-based allocator for objects of type T
 CRaven::StaticMeshComponentHolds a reference to a static renderable mesh
 CRaven::StaticMeshSubmissionRepresents a static mesh draw submission
 CRaven::ShaderResource::StorageBufferRepresents a uniform buffer descriptor
 Cstring_hash
 CRaven::SubMeshRepresents a contiguous section of the mesh data inside the merged buffers
 CRaven::SystemHolderHolds all necessary data for managing a system instance
 CRaven::SystemManagerManages the registration, update, and shutdown of systems
 CRaven::SystemVTableA static vtable holding function pointers for system operations
 CRaven::TagComponentSimple tag to name or identify an entity
 CRaven::TextureCubeFacesPaths to the six faces of a cubemap, in Vulkan order: +X, -X, +Y, -Y, +Z, -Z
 CRaven::TextureCubeSpecificationSpecification for creating a TextureCube resource
 CRaven::TextureSlotLightweight descriptor of a texture binding inside a material
 CRaven::TextureSpecificationDefines the properties and intended usage of a texture
 CRaven::ThreadPoolA thread pool for scheduling and executing jobs in parallel
 CRaven::TileInfoDataTile info uploaded to the geometry pass for Forward+ light list indexing
 CRaven::TimeGlobal static time utility for frame-based timing
 CRaven::TimerHigh-resolution manual stopwatch
 CRaven::TimerDataStores metadata for recorded timing sessions
 CRaven::TimestepA class representing a time step
 CRaven::UI::ToastSimple structure to represent a toast notification
 CRaven::ToneMapDataConfiguration for the HDR -> LDR tone mapping pass
 CRaven::ToneMapPassConverts the HDR geometry output to a displayable LDR image
 CTrackingAllocator< T >
 CRaven::TransformComponentRepresents position, rotation, and scale of an entity
 CRaven::Utils::TransitionInfo
 CRaven::Translation
 CTs...
 CRaven::TypeCategoryTrait< T >
 CRaven::TypeCategoryTrait< bool >
 CRaven::TypeCategoryTrait< Crux::vec2 >
 CRaven::TypeCategoryTrait< Crux::vec3 >
 CRaven::TypeCategoryTrait< Crux::vec4 >
 CRaven::TypeCategoryTrait< double >
 CRaven::TypeCategoryTrait< float >
 CRaven::TypeCategoryTrait< int >
 CRaven::TypeCategoryTrait< std::string >
 CRaven::TypeCategoryTrait< u32 >
 CRaven::TypeDataMetadata about a type
 CRaven::TypeIDA unique identifier for a type
 CRaven::TypeRegistryGlobal runtime type registry for Raven Engine
 CRaven::UIManagerManages UI lifecycle, panels, and rendering for both editor and runtime
 CRaven::UIPanelContextContext passed to UI panel callbacks during rendering
 CRaven::ShaderResource::UniformBufferRepresents a uniform buffer descriptor
 CRaven::UUIDA class representing a Universally Unique Identifier (UUID)
 CRaven::UUIDGeneratorCentralized generator for 64-bit tagged UUIDs
 CRaven::VariableDataMetadata describing a reflected member variable
 CRaven::VariableIDIdentifier for reflected member variable types
 CCrux::Vector< T, N >General N-dimensional fixed-size vector container
 CCrux::Vector< T, 2 >2-dimensional vector
 CCrux::Vector< T, 3 >3-dimensional vector
 CCrux::Vector< T, 4 >4-dimensional vector
 CRaven::VersionManager
 CRaven::VertexBufferLayoutRepresents the layout of vertex buffer elements in memory
 CRaven::VulkanCommandPoolWrapper around a Vulkan command pool
 CRaven::VulkanDeviceManages Vulkan physical and logical device selection and creation
 CRaven::VulkanImageInfoHolds Vulkan-specific handles related to an image
 CRaven::VulkanShaderCompilerManages compilation and reflection of Vulkan-compatible SPIR-V shaders from HLSL sources
 CVulkanShaderHandleHandles a Vulkan shader module lifecycle and stores its entry point
 CRaven::WindowClass representing a window
 CRaven::WindowPropsStruct to hold window properties
 CRaven::WorkerBackground thread that fetches and executes jobs from a JobQueue