pooling Folder
Folders Index
| folder | components |
Files Index
| file | helios/engine/runtime/pooling/_module.ixx |
|
Aggregate module for helios::engine::runtime::pooling namespace. More... | |
| file | GameObjectPool.ixx |
|
Object pool for efficient GameObject management and recycling. More... | |
| file | GameObjectPoolConfig.ixx |
|
Configuration data for GameObjectPool initialization. More... | |
| file | GameObjectPoolManager.ixx |
|
Manager for GameObject pooling and lifecycle management. More... | |
| file | GameObjectPoolRegistry.ixx |
|
Central registry for managing multiple GameObjectPool instances. More... | |
| file | GameObjectPoolSnapshot.ixx |
|
Read-only snapshot of GameObjectPool state. More... | |
Description
helios::engine::runtime::pooling
GameObject pooling for efficient object recycling.
Overview
This module provides infrastructure for memory-efficient entity management through object pooling. Pools pre-allocate GameObjects that can be acquired and released during gameplay, avoiding repeated allocation overhead.
Key Classes
| Class | Purpose |
|---|---|
| GameObjectPool | Container holding pre-allocated GameObject identifiers with O(1) acquire/release |
| GameObjectPoolConfig | Configuration data for pool initialization (ID, prefab, size) |
| GameObjectPoolManager | High-level manager for pool lifecycle and acquire/release operations |
| GameObjectPoolRegistry | Central registry mapping pool IDs to pool instances |
| GameObjectPoolSnapshot | Read-only snapshot of pool state (active/inactive counts) |
Architecture
The pooling system follows a layered architecture:
1. GameObjectPool: Low-level handle-based tracking (active/inactive lists) 2. GameObjectPoolRegistry: Pool lookup by typed ID 3. GameObjectPoolManager: Integration with GameWorld for prefab cloning and entity lookup 4. GameObjectPoolConfig: Declarative pool configuration
Spawn/despawn request handling has been moved to helios::engine::runtime::spawn.
Usage
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.