Rerun C++ SDK
Loading...
Searching...
No Matches
force_distance.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/blueprint/components/force_distance.fbs".
3
4#pragma once
5
6#include "../../component_descriptor.hpp"
7#include "../../datatypes/float64.hpp"
8#include "../../result.hpp"
9
10#include <cstdint>
11#include <memory>
12
13namespace rerun::blueprint::components {
14 /// **Component**: The target distance between two nodes.
15 ///
16 /// This is helpful to scale the layout, for example if long labels are involved.
17 ///
18 /// ⚠ **This type is _unstable_ and may change significantly in a way that the data won't be backwards compatible.**
19 ///
22
23 public:
24 ForceDistance() = default;
25
26 ForceDistance(rerun::datatypes::Float64 distance_) : distance(distance_) {}
27
28 ForceDistance& operator=(rerun::datatypes::Float64 distance_) {
29 distance = distance_;
30 return *this;
31 }
32
33 ForceDistance(double value_) : distance(value_) {}
34
35 ForceDistance& operator=(double value_) {
36 distance = value_;
37 return *this;
38 }
39
40 /// Cast to the underlying Float64 datatype
41 operator rerun::datatypes::Float64() const {
42 return distance;
43 }
44 };
45} // namespace rerun::blueprint::components
46
47namespace rerun {
48 static_assert(
50 );
51
52 /// \private
53 template <>
54 struct Loggable<blueprint::components::ForceDistance> {
55 static constexpr ComponentDescriptor Descriptor =
56 "rerun.blueprint.components.ForceDistance";
57
58 /// Returns the arrow data type this type corresponds to.
59 static const std::shared_ptr<arrow::DataType>& arrow_datatype() {
61 }
62
63 /// Serializes an array of `rerun::blueprint:: components::ForceDistance` into an arrow array.
64 static Result<std::shared_ptr<arrow::Array>> to_arrow(
65 const blueprint::components::ForceDistance* instances, size_t num_instances
66 ) {
67 if (num_instances == 0) {
68 return Loggable<rerun::datatypes::Float64>::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::Float64>::to_arrow(
76 &instances->distance,
77 num_instances
78 );
79 }
80 }
81 };
82} // namespace rerun
Status outcome object (success or error) returned for fallible operations.
Definition error.hpp:99
All Rerun C++ types and functions are in the rerun namespace or one of its nested namespaces.
Definition rerun.hpp:23
A ComponentDescriptor fully describes the semantics of a column of data.
Definition component_descriptor.hpp:14
The Loggable trait is used by all built-in implementation of rerun::AsComponents to serialize a colle...
Definition loggable.hpp:11
Component: The target distance between two nodes.
Definition force_distance.hpp:20
Datatype: A double-precision 64-bit IEEE 754 floating point number.
Definition float64.hpp:25