Rerun C++ SDK
Loading...
Searching...
No Matches
entity_path.hpp
1// DO NOT EDIT! This file was auto-generated by crates/build/re_types_builder/src/codegen/cpp/mod.rs
2// Based on "crates/store/re_types/definitions/rerun/components/entity_path.fbs".
3
4#pragma once
5
6#include "../datatypes/entity_path.hpp"
7#include "../result.hpp"
8
9#include <cstdint>
10#include <memory>
11#include <string>
12#include <utility>
13
14namespace rerun::components {
15 /// **Component**: A path to an entity, usually to reference some data that is part of the target entity.
16 struct EntityPath {
18
19 public: // START of extensions from entity_path_ext.cpp:
20 EntityPath(std::string_view path_) : value(std::string(path_)) {}
21
22 EntityPath(const char* path_) : value(std::string(path_)) {}
23
24 // END of extensions from entity_path_ext.cpp, start of generated code:
25
26 public:
27 EntityPath() = default;
28
29 EntityPath(rerun::datatypes::EntityPath value_) : value(std::move(value_)) {}
30
31 EntityPath& operator=(rerun::datatypes::EntityPath value_) {
32 value = std::move(value_);
33 return *this;
34 }
35
36 EntityPath(std::string path_) : value(std::move(path_)) {}
37
38 EntityPath& operator=(std::string path_) {
39 value = std::move(path_);
40 return *this;
41 }
42
43 /// Cast to the underlying EntityPath datatype
45 return value;
46 }
47 };
48} // namespace rerun::components
49
50namespace rerun {
51 static_assert(sizeof(rerun::datatypes::EntityPath) == sizeof(components::EntityPath));
52
53 /// \private
54 template <>
55 struct Loggable<components::EntityPath> {
56 static constexpr const char Name[] = "rerun.components.EntityPath";
57
58 /// Returns the arrow data type this type corresponds to.
59 static const std::shared_ptr<arrow::DataType>& arrow_datatype() {
60 return Loggable<rerun::datatypes::EntityPath>::arrow_datatype();
61 }
62
63 /// Serializes an array of `rerun::components::EntityPath` into an arrow array.
64 static Result<std::shared_ptr<arrow::Array>> to_arrow(
65 const components::EntityPath* instances, size_t num_instances
66 ) {
67 if (num_instances == 0) {
68 return Loggable<rerun::datatypes::EntityPath>::to_arrow(nullptr, 0);
69 } else if (instances == nullptr) {
70 return rerun::Error(
71 ErrorCode::UnexpectedNullArgument,
72 "Passed array instances is null when num_elements> 0."
73 );
74 } else {
75 return Loggable<rerun::datatypes::EntityPath>::to_arrow(
76 &instances->value,
77 num_instances
78 );
79 }
80 }
81 };
82} // namespace rerun
Status outcome object (success or error) returned for fallible operations.
Definition error.hpp:95
All built-in components. See Types in the Rerun manual.
Definition rerun.hpp:76
All Rerun C++ types and functions are in the rerun namespace or one of its nested namespaces.
Definition rerun.hpp:22
Component: A path to an entity, usually to reference some data that is part of the target entity.
Definition entity_path.hpp:16
Datatype: A path to an entity in the ChunkStore.
Definition entity_path.hpp:21