container Folder
Folders Index
| folder | buffer |
Files Index
| file | helios/core/container/_module.ixx |
|
Aggregate module for helios::core::container namespace. More... | |
| file | ConceptModelRegistry.ixx |
|
Generic type-indexed registry for type-erased wrappers. More... | |
| file | DenseRuntimeHandleRegistry.ixx |
|
Dense registry mapping strong identifiers to contiguous runtime indices. More... | |
Description
helios::core::container
Generic container types shared across the engine.
Overview
This module provides reusable container infrastructure that is not specific to any engine subsystem. It contains the type-erased registry pattern used by Systems and Managers, as well as double-buffered message-passing containers used by the event system.
Submodules
| Submodule | Purpose |
|---|---|
| ConceptModelRegistry | Generic type-indexed registry for type-erased wrappers (Concept/Model pattern) |
| DenseRuntimeHandleRegistry | Dense registry mapping StrongId-based identifiers to contiguous runtime indices |
| buffer/ | Double-buffering infrastructure for thread-safe message passing |
Key Types
ConceptModelRegistry
A generic container that stores type-erased wrapper instances indexed by a compile-time ID provider. Provides O(1) lookup by concrete type and insertion-order iteration for deterministic processing.
Used as the backend for:
| Alias | AnyT | IdProvider |
|---|---|---|
| SystemRegistry | System | SystemTypeId |
| ManagerRegistry | Manager | ResourceTypeId |
DenseRuntimeHandleRegistry
A dense registry that maps StrongId-based identifiers to contiguous RuntimeId indices. Produces RuntimeHandle instances via idempotent getOrCreate(). Used as the backend for per-resource-type handle registries:
| Alias | StrongIdentifier | RuntimeId |
|---|---|---|
| ViewportHandleRegistry | ViewportId | ViewportRuntimeId |
| FramebufferHandleRegistry | FramebufferId | FramebufferRuntimeId |
| MaterialHandleRegistry | MaterialId | MaterialRuntimeId |
| MeshHandleRegistry | MeshId | MeshRuntimeId |
| ShaderHandleRegistry | ShaderId | ShaderRuntimeId |
See Also
- Data — StrongId and RuntimeHandle primitives
- Buffer — Double-buffered message containers
- System — System architecture using SystemRegistry
- Resource Registry — ManagerRegistry integration
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.