Skip to main content

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

Tag component indicating an inactive 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

structInactive

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

Description

Tag component indicating an inactive entity.

File Listing

The file content with the documentation metadata removed is:

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

Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.