SpawnCommand.ixx File
Command for requesting GameObject spawning from a pool. More...
Included Headers
#include <cassert>
#include <cinttypes>
#include <expected>
#include <helios.engine.core.data.SpawnProfileId>
#include <helios.math.types>
#include <helios.engine.runtime.messaging.command.WorldCommandDispatcher>
#include <helios.engine.runtime.messaging.command.WorldCommand>
#include <helios.engine.runtime.spawn.SpawnContext>
Namespaces Index
| namespace | helios |
| namespace | engine |
|
Main engine module aggregating core infrastructure and game systems. More... | |
| namespace | runtime |
|
Runtime infrastructure for game execution and lifecycle orchestration. More... | |
| namespace | spawn |
|
Entity spawning infrastructure for the helios engine. More... | |
| namespace | commands |
|
Commands for spawn and despawn operations. More... | |
Classes Index
| class | SpawnCommand |
|
Command to request spawning of GameObjects from a pool. More... | |
Description
Command for requesting GameObject spawning from a pool.
File Listing
The file content with the documentation metadata removed is:
23export namespace helios::engine::runtime::spawn::commands {
40 class SpawnCommand : public helios::engine::runtime::messaging::command::WorldCommand {
48 const helios::engine::core::data::SpawnProfileId spawnProfileId_;
50 const helios::engine::runtime::spawn::SpawnContext spawnContext_;
55 explicit SpawnCommand(
58 const size_t spawnBudget = 1
60 spawnProfileId_(spawnProfileId),
61 spawnContext_(spawnContext),
62 spawnBudget_(spawnBudget)
70 void execute(helios::engine::runtime::world::GameWorld& gameWorld) const noexcept override {
81 helios::engine::runtime::world::GameWorld& gameWorld,
82 helios::engine::runtime::messaging::command::WorldCommandDispatcher& dispatcher) const noexcept override {
84 dispatcher.dispatch(gameWorld, *this);
93 [[nodiscard]] helios::engine::core::data::SpawnProfileId spawnProfileId() const noexcept {
102 [[nodiscard]] size_t spawnBudget() const noexcept {
111 [[nodiscard]] helios::engine::runtime::spawn::SpawnContext spawnContext() const noexcept {
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.