Skip to main content

FontId.ixx File

Strongly-typed identifier for font families. More...

Included Headers

#include <cstdint> #include <string_view> #include <helios.core.data> #include <helios.core.types> #include <helios.core.algorithms>

Namespaces Index

namespacehelios
namespaceengine

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

namespacemodules

Domain-specific components and systems. More...

namespaceui

User interface components and systems for game entities. More...

namespacewidgets

UI widget components and systems. More...

namespacetypes

Classes Index

structFontIdTag

Tag type for FontId. More...

structhash<helios::engine::modules::ui::widgets::types::FontId>

Hash specialization for FontId. More...

Description

Strongly-typed identifier for font families.

File Listing

The file content with the documentation metadata removed is:

1/**
2 * @file FontId.ixx
3 * @brief Strongly-typed identifier for font families.
4 */
5module;
6
7#include <cstdint>
8#include <string_view>
9
10export module helios.engine.modules.ui.widgets.types.FontId;
11
12import helios.core.algorithms;
13import helios.core.types;
14import helios.core.data;
15
17
18 /**
19 * @brief Tag type for FontId.
20 */
21 struct FontIdTag{};
22
23 /**
24 * @brief Strongly-typed identifier for font families used in text rendering.
25 *
26 * @details Uses FNV-1a hashing to convert font family names to unique
27 * 32-bit identifiers at compile time.
28 *
29 * @see helios::core::data::StrongId
30 */
32
33}
34
35/**
36 * @brief Hash specialization for FontId.
37 */
38template<>
39struct std::hash<helios::engine::modules::ui::widgets::types::FontId> {
40 std::size_t operator()(const helios::engine::modules::ui::widgets::types::FontId& id) const noexcept {
41 return id.value();
42 }
43
44};

Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.