Rerun C++ SDK
Loading...
Searching...
No Matches
rotation_axis_angle.hpp
1// DO NOT EDIT! This file was auto-generated by crates/re_types_builder/src/codegen/cpp/mod.rs
2// Based on "crates/re_types/definitions/rerun/datatypes/rotation_axis_angle.fbs".
3
4#pragma once
5
6#include "../result.hpp"
7#include "angle.hpp"
8#include "vec3d.hpp"
9
10#include <cstdint>
11#include <memory>
12
13namespace arrow {
14 class Array;
15 class DataType;
16 class StructBuilder;
17} // namespace arrow
18
19namespace rerun::datatypes {
20 /// **Datatype**: 3D rotation represented by a rotation around a given axis.
22 /// Axis to rotate around.
23 ///
24 /// This is not required to be normalized.
25 /// If normalization fails (typically because the vector is length zero), the rotation is silently
26 /// ignored.
28
29 /// How much to rotate around the axis.
31
32 public:
33 // Extensions to generated type defined in 'rotation_axis_angle_ext.cpp'
34
35 RotationAxisAngle(const Vec3D& _axis, const Angle& _angle) : axis(_axis), angle(_angle) {}
36
37 public:
38 RotationAxisAngle() = default;
39 };
40} // namespace rerun::datatypes
41
42namespace rerun {
43 template <typename T>
44 struct Loggable;
45
46 /// \private
47 template <>
48 struct Loggable<datatypes::RotationAxisAngle> {
49 static constexpr const char Name[] = "rerun.datatypes.RotationAxisAngle";
50
51 /// Returns the arrow data type this type corresponds to.
52 static const std::shared_ptr<arrow::DataType>& arrow_datatype();
53
54 /// Fills an arrow array builder with an array of this type.
55 static rerun::Error fill_arrow_array_builder(
56 arrow::StructBuilder* builder, const datatypes::RotationAxisAngle* elements,
57 size_t num_elements
58 );
59
60 /// Serializes an array of `rerun::datatypes::RotationAxisAngle` into an arrow array.
61 static Result<std::shared_ptr<arrow::Array>> to_arrow(
62 const datatypes::RotationAxisAngle* instances, size_t num_instances
63 );
64 };
65} // namespace rerun
Status outcome object (success or error) returned for fallible operations.
Definition error.hpp:87
All built-in datatypes. See Types in the Rerun manual.
Definition rerun.hpp:72
All Rerun C++ types and functions are in the rerun namespace or one of its nested namespaces.
Definition rerun.hpp:20
Datatype: Angle in either radians or degrees.
Definition angle.hpp:55
Datatype: 3D rotation represented by a rotation around a given axis.
Definition rotation_axis_angle.hpp:21
rerun::datatypes::Vec3D axis
Axis to rotate around.
Definition rotation_axis_angle.hpp:27
rerun::datatypes::Angle angle
How much to rotate around the axis.
Definition rotation_axis_angle.hpp:30
Datatype: A vector in 3D space.
Definition vec3d.hpp:20