38 std::optional<std::string_view> archetype_name_,
39 std::optional<std::string_view> archetype_field_name_, std::string_view component_name_
46 const char* archetype_name_,
const char* archetype_field_name_,
47 const char* component_name_
53 constexpr ComponentDescriptor(std::string_view component_name_)
56 constexpr ComponentDescriptor(
const char* component_name_)
60 std::size_t archetype_name_h =
61 std::hash<std::optional<std::string_view>>{}(this->
archetype_name);
62 std::size_t component_name_h = std::hash<std::string_view>{}(this->
component_name);
63 std::size_t archetype_field_name_h =
65 return archetype_name_h ^ component_name_h ^ archetype_field_name_h;
85 std::optional<std::string_view> archetype_field_name_
102 if (this->archetype_field_name.has_value()) {
112 if (this->archetype_field_name.has_value()) {
122 std::optional<std::string_view> archetype_field_name_
124 if (this->archetype_field_name.has_value()) {
134 if (this->archetype_field_name.has_value()) {
All Rerun C++ types and functions are in the rerun namespace or one of its nested namespaces.
Definition rerun.hpp:23
uint64_t ComponentDescriptorHash
See ComponentDescriptor::hashed.
Definition component_descriptor.hpp:9
A ComponentDescriptor fully describes the semantics of a column of data.
Definition component_descriptor.hpp:14
ComponentDescriptor with_archetype_field_name(const char *archetype_field_name_) const
Unconditionally sets archetype_field_name to the given one.
Definition component_descriptor.hpp:93
ComponentDescriptor or_with_archetype_field_name(std::optional< std::string_view > archetype_field_name_) const
Sets archetype_field_name to the given one iff it's not already set.
Definition component_descriptor.hpp:121
std::optional< std::string_view > archetype_field_name
Optional name of the field within Archetype associated with this data.
Definition component_descriptor.hpp:27
std::optional< std::string_view > archetype_name
Optional name of the Archetype associated with this data.
Definition component_descriptor.hpp:20
ComponentDescriptor with_archetype_field_name(std::optional< std::string_view > archetype_field_name_) const
Unconditionally sets archetype_field_name to the given one.
Definition component_descriptor.hpp:84
std::string_view component_name
Semantic name associated with this data.
Definition component_descriptor.hpp:35
ComponentDescriptor with_archetype_name(std::optional< std::string_view > archetype_name_) const
Unconditionally sets archetype_name to the given one.
Definition component_descriptor.hpp:69
ComponentDescriptor or_with_archetype_field_name(const char *archetype_field_name_) const
Sets archetype_field_name to the given one iff it's not already set.
Definition component_descriptor.hpp:133
ComponentDescriptor or_with_archetype_name(const char *archetype_name_) const
Sets archetype_name to the given one iff it's not already set.
Definition component_descriptor.hpp:111
ComponentDescriptor or_with_archetype_name(std::optional< std::string_view > archetype_name_) const
Sets archetype_name to the given one iff it's not already set.
Definition component_descriptor.hpp:100
ComponentDescriptor with_archetype_name(const char *archetype_name_) const
Unconditionally sets archetype_name to the given one.
Definition component_descriptor.hpp:77