Skip to main content

types Namespace

Definition

namespace helios::engine::core::types { ... }

Classes Index

structCanonical

Marks a component as canonical/authoritative data. More...

structComponentTypeSpec<TComponent, TArgs>

Binds trailing template arguments to a component template. More...

structLocal

Marks a component as local to an entity or scope. More...

structno_init_t

Tag type used to indicate skipping default initialization. More...

structState

Marks a component as state-bearing runtime data. More...

structWorld

Marks a component as world-level or globally shared. More...

Typedefs Index

template < ... >
usingDirtyComponentSpec = ComponentTypeSpec< TComponent, TArgs... >

Semantic alias for mutable-component specifications. More...

Functions Index

constexpr uint32_tfnv1a_hash (const std::string_view str) noexcept

Computes a 32-bit FNV-1a hash from a string. More...

Variables Index

constexpr no_init_tno_init

Tag constant for requesting uninitialized construction. More...

Typedefs

DirtyComponentSpec

template <template< typename, typename... > typename TComponent, typename... TArgs>
using helios::engine::core::types::DirtyComponentSpec = typedef ComponentTypeSpec<TComponent, TArgs...>

Semantic alias for mutable-component specifications.

Definition at line 30 of file ComponentTypeSpecs.ixx.

Functions

fnv1a_hash()

constexpr uint32_t helios::engine::core::types::fnv1a_hash (const std::string_view str)
constexpr noexcept

Computes a 32-bit FNV-1a hash from a string.

Implements the Fowler–Noll–Vo hash function (FNV-1a variant), a fast, non-cryptographic hash suitable for hash tables and identifier generation. The function is constexpr, enabling compile-time hashing of string literals.

Definition at line 49 of file FuncDefs.ixx.

49 [[nodiscard]] constexpr uint32_t fnv1a_hash(const std::string_view str) noexcept {
50 uint32_t hash = 2166136261U;
51 for (char c: str) {
52 hash ^= static_cast<uint8_t>(c);
53 hash *= 16777619U;
54 }
55 return hash;
56 }

Reference helios::engine::core::registerComponents.

Variables

no_init

constexpr no_init_t helios::engine::core::types::no_init
constexpr

Tag constant for requesting uninitialized construction.

This is a convenience instance of no_init_t that can be passed to constructors supporting uninitialized construction.

 helios::engine::util::Guid id{helios::ecs::types::no_init};
See Also

no_init_t

See Also

helios::engine::util::Guid

Definition at line 68 of file TypeDefs.ixx.

68 inline constexpr no_init_t no_init;

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


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.