Viam C++ SDK current
Loading...
Searching...
No Matches
orientation_types.hpp
1#pragma once
2
3#include <viam/sdk/common/proto_convert.hpp>
4
5namespace viam {
6namespace app {
7namespace v1 {
8
9class Translation;
10}
11} // namespace app
12} // namespace viam
13
14namespace viam {
15namespace sdk {
16
17enum OrientationType {
18 AxisAngles,
19 OrientationVector,
20 OrientationVectorDegrees,
21 EulerAngles,
22 Quaternion,
23};
24
26 double x, y, z, theta;
27};
28
30 double yaw, roll, pitch;
31};
32
34 double x, y, z, theta;
35};
36
38 double x, y, z, theta;
39};
40
41struct quaternion {
42 double x, y, z, w;
43};
44
46 double x, y, z;
47};
48
49namespace proto_convert_details {
50
51template <>
53 void operator()(const translation&, app::v1::Translation*) const;
54};
55
56template <>
57struct from_proto_impl<app::v1::Translation> {
58 translation operator()(const app::v1::Translation*) const;
59};
60
61} // namespace proto_convert_details
62} // namespace sdk
63} // namespace viam
Definition orientation_types.hpp:25
Definition orientation_types.hpp:29
Definition orientation_types.hpp:37
Definition orientation_types.hpp:33
Definition orientation_types.hpp:41
Definition orientation_types.hpp:45