Pass Class
Abstract base class for game loop passes. More...
Declaration
Derived Classes
| class | TypedPass<StateType> |
|
State-filtered pass that only executes in specific states. More... | |
Public Destructor Index
| ~Pass ()=default | |
Public Member Functions Index
| void | update (helios::engine::runtime::world::UpdateContext &updateContext)=0 |
|
Updates all systems in this pass. More... | |
| void | init (helios::engine::runtime::world::GameWorld &gameWorld)=0 |
|
Initializes all systems in this pass. More... | |
| Phase & | addCommitPoint (const CommitPoint commitPoint=CommitPoint::PassEvents)=0 |
| CommitPoint | commitPoint () const noexcept=0 |
|
Returns the configured commit point. More... | |
| bool | shouldRun (helios::engine::runtime::world::UpdateContext &updateContext) const noexcept=0 |
|
Determines if this pass should execute. More... | |
template <typename T, typename... Args> | |
| Pass & | addSystem (Args &&... args) |
|
Adds a system of type T to this pass. More... | |
Protected Member Attributes Index
| helios::engine::runtime::world::SystemRegistry | systemRegistry_ {} |
|
Registry holding all systems for this pass. More... | |
Description
Abstract base class for game loop passes.
A Pass represents a logical grouping of systems executed sequentially within a Phase. Concrete implementations (TypedPass) add state-based filtering via shouldRun().
## Key Features
- **System Registration:** Systems are added via addSystem<T>()
- **Commit Points:** Control when events/commands are synchronized
- **State Filtering:** Passes can be skipped based on game state
- See Also
- See Also
- See Also
System
Definition at line 49 of file Pass.ixx.
Public Member Functions
addCommitPoint()
|
Adds a commit point and returns the owning Phase.
- Parameters
-
commitPoint The synchronization flags.
- Returns
Reference to the owning Phase.
Definition at line 81 of file Pass.ixx.
References commitPoint and helios::engine::runtime::gameloop::PassEvents.
addSystem()
| inline |
Adds a system of type T to this pass.
- Template Parameters
-
T The system type to add.
Args Constructor argument types for the system.
- Parameters
-
args Arguments forwarded to the system constructor.
- Returns
Reference to this Pass for method chaining.
Definition at line 111 of file Pass.ixx.
References addSystem and systemRegistry_.
Referenced by addSystem.
commitPoint()
| noexcept |
Returns the configured commit point.
- Returns
The commit point flags for this pass.
Definition at line 88 of file Pass.ixx.
Referenced by addCommitPoint.
init()
|
shouldRun()
| noexcept |
update()
|
Protected Member Attributes
systemRegistry_
| protected |
Registry holding all systems for this pass.
Definition at line 55 of file Pass.ixx.
Referenced by addSystem and helios::engine::runtime::gameloop::TypedPass< StateType >::helios::engine::runtime::gameloop::Phase.
The documentation for this class was generated from the following file:
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.