Skip to main content

RuntimeHandle Struct Template

A lightweight handle that pairs a stable StrongIdentifier with a dense RuntimeId. More...

Declaration

template <typename StrongIdentifier, typename RuntimeId> struct helios::core::data::RuntimeHandle<StrongIdentifier, RuntimeId> { ... }

Friends Index

template <typename StrongIdentifier, typename RuntimeId>
booloperator==

Defaulted equality comparison over both fields. More...

Public Member Attributes Index

template <typename StrongIdentifier, typename RuntimeId>
StrongIdentifierstrongId {}

The stable, content-authored identifier. More...

template <typename StrongIdentifier, typename RuntimeId>
RuntimeIdruntimeId {}

The dense runtime index assigned by a registry or pool. More...

Description

A lightweight handle that pairs a stable StrongIdentifier with a dense RuntimeId.

`RuntimeHandle` bridges the gap between content-authored, hash-based identifiers (`StrongId`) and fast, contiguous runtime indices used by pools and registries. The handle is a plain value type suitable for storage in components, containers, and command buffers.

Equality is defined over both fields; two handles are equal only when both their `strongId` and `runtimeId` match.

A `std::hash` specialization is provided so that `RuntimeHandle` can be used as a key in unordered containers.

Template Parameters
StrongIdentifier

The compile-time identifier type (typically a `StrongId<Tag>`).

RuntimeId

The dense runtime index type (typically `uint32_t`).

See Also

StrongId

See Also

DenseRuntimeHandleRegistry

Definition at line 40 of file RuntimeHandle.ixx.

Friends

operator==

friend bool const RuntimeHandle &, const RuntimeHandle &
default

Defaulted equality comparison over both fields.

Definition at line 55 of file RuntimeHandle.ixx.

Public Member Attributes

runtimeId

template <typename StrongIdentifier, typename RuntimeId>
RuntimeId helios::core::data::RuntimeHandle< StrongIdentifier, RuntimeId >::runtimeId {}

The dense runtime index assigned by a registry or pool.

Definition at line 50 of file RuntimeHandle.ixx.

50 RuntimeId runtimeId{};

strongId

template <typename StrongIdentifier, typename RuntimeId>
StrongIdentifier helios::core::data::RuntimeHandle< StrongIdentifier, RuntimeId >::strongId {}

The stable, content-authored identifier.

Definition at line 45 of file RuntimeHandle.ixx.

45 StrongIdentifier strongId{};

The documentation for this struct was generated from the following file:


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.