Skip to main content

ecs Namespace

Core Entity-Component-System architecture. More...

Definition

namespace helios::engine::ecs { ... }

Namespaces Index

namespacecomponents

ECS core components for entity relationships. More...

namespacesystems

Core ECS systems for entity management. More...

namespacetraits
namespacetypes

Classes Index

structComponentOps

Container for type-erased component lifecycle function pointers. More...

classComponentOpsRegistry

Global registry for component lifecycle function pointers. More...

classComponentReflector

Generates and registers ComponentOps for a component type. More...

structEntityHandle

A versioned handle for referencing entities in an EntityPool. More...

classEntityManager

Manages entities and their associated components. More...

classEntityRegistry

Central registry for creating and managing entity handles. More...

structEntityResolver

Callable that resolves an EntityHandle to a GameObject. More...

classGameObject

Lightweight facade for entity component manipulation. More...

classSparseSetBase

Abstract base class for type-erased sparse set access. More...

classSparseSet<T>

A generic sparse set providing O(1) insertion, lookup, and removal. More...

classView<Components>

A view class to iterate over entities having specific components. More...

Functions Index

voidregisterComponents ()

Registers all lifecycle components with the ComponentReflector. More...

Variables Index

constexpr autoInitialVersion = helios::engine::common::types::VersionId{1}

The initial version assigned to newly created entities. More...

constexpr autoTombstone = helios::engine::ecs::types::EntityTombstone

Sentinel value indicating an empty slot in the sparse array. More...

Description

Core Entity-Component-System architecture.

This module provides the foundational classes for the composition-based game architecture. It includes entity base classes (GameObject, Component, CloneableComponent), system infrastructure (System), and query utilities (GameObjectFilter, GameObjectView).

Functions

registerComponents()

void helios::engine::ecs::registerComponents ()
inline

Registers all lifecycle components with the ComponentReflector.

Definition at line 17 of file registry.ixx.

17 inline void registerComponents() {
19
20 R::registerType<components::HierarchyComponent>();
21 }

Referenced by helios::engine::bootstrap::registerAllComponents.

Variables

InitialVersion

auto helios::engine::ecs::InitialVersion = helios::engine::common::types::VersionId{1}
constexpr

The initial version assigned to newly created entities.

Versions start at 1 to distinguish valid handles from default-initialized handles that may have a version of 0.

Definition at line 28 of file EntityRegistry.ixx.

Referenced by helios::engine::ecs::EntityRegistry::create.

Tombstone

auto helios::engine::ecs::Tombstone = helios::engine::ecs::types::EntityTombstone
constexpr

The documentation for this namespace was generated from the following files:


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.