Skip to main content

engine/mechanics/lifecycle/components/Active.ixx File

Tag component indicating an active entity. More...

Namespaces Index

namespacehelios
namespaceengine

Main engine module aggregating core infrastructure and game systems. More...

namespacemechanics

High-level gameplay systems and components for game logic. More...

namespacelifecycle

Lifecycle management for entity components and world-level operations. More...

namespacecomponents

Components for managing entity lifecycle states. More...

Classes Index

structActive

Tag component indicating that an entity is active. More...

Description

Tag component indicating an active entity.

File Listing

The file content with the documentation metadata removed is:

1/**
2 * @file Active.ixx
3 * @brief Tag component indicating an active entity.
4 */
5module;
6
7export module helios.engine.mechanics.lifecycle.components.Active;
8
10
11 /**
12 * @brief Tag component indicating that an entity is active.
13 *
14 * @details This empty struct serves as a marker component for filtering
15 * active entities in views. It is automatically managed by `GameObject::setActive()`.
16 *
17 * When `setActive(true)` is called:
18 * - The `Active` tag is added
19 * - The `Inactive` tag is removed
20 * - `onActivate()` is called on components that support it
21 *
22 * ## Usage in Views
23 *
24 * ```cpp
25 * // Query only active entities
26 * for (auto [entity, health, active] : gameWorld->view<
27 * HealthComponent,
28 * Active
29 * >().whereEnabled()) {
30 * // Process only active entities
31 * }
32 * ```
33 *
34 * @see Inactive
35 * @see GameObject::setActive
36 */
37 struct Active {};
38
39}

Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.