Rerun C++ SDK
Loading...
Searching...
No Matches
visualizer_instruction_id.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_sdk_types/definitions/rerun/blueprint/components/visualizer_instruction_id.fbs".
3
4#pragma once
5
6#include "../../datatypes/uuid.hpp"
7#include "../../result.hpp"
8
9#include <array>
10#include <cstdint>
11#include <memory>
12
13namespace rerun::blueprint::components {
14 /// **Component**: ID for a visualizer instruction.
15 ///
16 /// IDs are only guaranteed to be unique in the scope of a view.
17 /// For details see `archetypes::ActiveVisualizers`.
18 ///
19 /// ⚠ **This type is _unstable_ and may change significantly in a way that the data won't be backwards compatible.**
20 ///
22 /// IDs of a single visualizer instruction.
24
25 public:
26 VisualizerInstructionId() = default;
27
28 VisualizerInstructionId(rerun::datatypes::Uuid visualizer_) : visualizer(visualizer_) {}
29
30 VisualizerInstructionId& operator=(rerun::datatypes::Uuid visualizer_) {
31 visualizer = visualizer_;
32 return *this;
33 }
34
35 VisualizerInstructionId(std::array<uint8_t, 16> bytes_) : visualizer(bytes_) {}
36
37 VisualizerInstructionId& operator=(std::array<uint8_t, 16> bytes_) {
38 visualizer = bytes_;
39 return *this;
40 }
41
42 /// Cast to the underlying Uuid datatype
43 operator rerun::datatypes::Uuid() const {
44 return visualizer;
45 }
46 };
47} // namespace rerun::blueprint::components
48
49namespace rerun {
50 static_assert(
52 );
53
54 /// \private
55 template <>
56 struct Loggable<blueprint::components::VisualizerInstructionId> {
57 static constexpr std::string_view ComponentType =
58 "rerun.blueprint.components.VisualizerInstructionId";
59
60 /// Returns the arrow data type this type corresponds to.
61 static const std::shared_ptr<arrow::DataType>& arrow_datatype() {
63 }
64
65 /// Serializes an array of `rerun::blueprint:: components::VisualizerInstructionId` into an arrow array.
66 static Result<std::shared_ptr<arrow::Array>> to_arrow(
67 const blueprint::components::VisualizerInstructionId* instances, size_t num_instances
68 ) {
69 if (num_instances == 0) {
70 return Loggable<rerun::datatypes::Uuid>::to_arrow(nullptr, 0);
71 } else if (instances == nullptr) {
72 return rerun::Error(
73 ErrorCode::UnexpectedNullArgument,
74 "Passed array instances is null when num_elements> 0."
75 );
76 } else {
77 return Loggable<rerun::datatypes::Uuid>::to_arrow(
78 &instances->visualizer,
79 num_instances
80 );
81 }
82 }
83 };
84} // namespace rerun
Status outcome object (success or error) returned for fallible operations.
Definition error.hpp:103
All Rerun C++ types and functions are in the rerun namespace or one of its nested namespaces.
Definition rerun.hpp:23
A type of component that can be registered.
Definition component_type.hpp:19
The Loggable trait is used by all built-in implementation of rerun::AsComponents to serialize a colle...
Definition loggable.hpp:11
Component: ID for a visualizer instruction.
Definition visualizer_instruction_id.hpp:21
rerun::datatypes::Uuid visualizer
IDs of a single visualizer instruction.
Definition visualizer_instruction_id.hpp:23
Datatype: A 16-byte UUID.
Definition uuid.hpp:20