Robot Raconteur Companion C++ Library
Loading...
Searching...
No Matches
geometry_parser.h
1#include "yaml_parser_common_include.h"
2
3#pragma once
4
5namespace YAML
6{
7template <>
8struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Vector2>
9{
10 static Node encode(const com::robotraconteur::geometry::Vector2& rhs);
11 static bool decode(const Node& node, com::robotraconteur::geometry::Vector2& rhs);
12};
13
14template <>
15struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Vector3>
16{
17 static Node encode(const com::robotraconteur::geometry::Vector3& rhs);
18 static bool decode(const Node& node, com::robotraconteur::geometry::Vector3& rhs);
19};
20
21template <>
22struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Vector6>
23{
24 static Node encode(const com::robotraconteur::geometry::Vector6& rhs);
25 static bool decode(const Node& node, com::robotraconteur::geometry::Vector6& rhs);
26};
27
28template <>
29struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Point2D>
30{
31 static Node encode(const com::robotraconteur::geometry::Point2D& rhs);
32 static bool decode(const Node& node, com::robotraconteur::geometry::Point2D& rhs);
33};
34
35template <>
36struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Point>
37{
38 static Node encode(const com::robotraconteur::geometry::Point& rhs);
39 static bool decode(const Node& node, com::robotraconteur::geometry::Point& rhs);
40};
41
42template <>
43struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Size2D>
44{
45 static Node encode(const com::robotraconteur::geometry::Size2D& rhs);
46 static bool decode(const Node& node, com::robotraconteur::geometry::Size2D& rhs);
47};
48
49template <>
50struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Size>
51{
52 static Node encode(const com::robotraconteur::geometry::Size& rhs);
53 static bool decode(const Node& node, com::robotraconteur::geometry::Size& rhs);
54};
55
56template <>
57struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Rect>
58{
59 static Node encode(const com::robotraconteur::geometry::Rect& rhs);
60 static bool decode(const Node& node, com::robotraconteur::geometry::Rect& rhs);
61};
62
63template <>
64struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Box>
65{
66 static Node encode(const com::robotraconteur::geometry::Box& rhs);
67 static bool decode(const Node& node, com::robotraconteur::geometry::Box& rhs);
68};
69
70template <>
71struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Quaternion>
72{
73 static Node encode(const com::robotraconteur::geometry::Quaternion& rhs);
74 static bool decode(const Node& node, com::robotraconteur::geometry::Quaternion& rhs);
75};
76
77template <>
78struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Plane>
79{
80 static Node encode(const com::robotraconteur::geometry::Plane& rhs);
81 static bool decode(const Node& node, com::robotraconteur::geometry::Plane& rhs);
82};
83
84template <>
85struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Transform>
86{
87 static Node encode(const com::robotraconteur::geometry::Transform& rhs);
88 static bool decode(const Node& node, com::robotraconteur::geometry::Transform& rhs);
89};
90
91template <>
92struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Pose>
93{
94 static Node encode(const com::robotraconteur::geometry::Pose& rhs);
95 static bool decode(const Node& node, com::robotraconteur::geometry::Pose& rhs);
96};
97
98template <>
99struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Pose2D>
100{
101 static Node encode(const com::robotraconteur::geometry::Pose2D& rhs);
102 static bool decode(const Node& node, com::robotraconteur::geometry::Pose2D& rhs);
103};
104
105template <>
106struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::SpatialVelocity>
107{
108 static Node encode(const com::robotraconteur::geometry::SpatialVelocity& rhs);
109 static bool decode(const Node& node, com::robotraconteur::geometry::SpatialVelocity& rhs);
110};
111
112template <>
113struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::SpatialAcceleration>
114{
115 static Node encode(const com::robotraconteur::geometry::SpatialAcceleration& rhs);
116 static bool decode(const Node& node, com::robotraconteur::geometry::SpatialAcceleration& rhs);
117};
118
119template <>
120struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::Wrench>
121{
122 static Node encode(const com::robotraconteur::geometry::Wrench& rhs);
123 static bool decode(const Node& node, com::robotraconteur::geometry::Wrench& rhs);
124};
125
126template <>
127struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::SpatialInertia>
128{
129 static Node encode(const com::robotraconteur::geometry::SpatialInertia& rhs);
130 static bool decode(const Node& node, com::robotraconteur::geometry::SpatialInertia& rhs);
131};
132
133template <>
134struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::NamedTransformPtr>
135{
136 static Node encode(const com::robotraconteur::geometry::NamedTransformPtr& rhs);
137 static bool decode(const Node& node, com::robotraconteur::geometry::NamedTransformPtr& rhs);
138};
139
140template <>
141struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::NamedPosePtr>
142{
143 static Node encode(const com::robotraconteur::geometry::NamedPosePtr& rhs);
144 static bool decode(const Node& node, com::robotraconteur::geometry::NamedPosePtr& rhs);
145};
146
147template <>
148struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::PoseWithCovariancePtr>
149{
150 static Node encode(const com::robotraconteur::geometry::PoseWithCovariancePtr& rhs);
151 static bool decode(const Node& node, com::robotraconteur::geometry::PoseWithCovariancePtr& rhs);
152};
153
154template <>
155struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::NamedPoseWithCovariancePtr>
156{
157 static Node encode(const com::robotraconteur::geometry::NamedPoseWithCovariancePtr& rhs);
158 static bool decode(const Node& node, com::robotraconteur::geometry::NamedPoseWithCovariancePtr& rhs);
159};
160
161template <>
162struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::NamedPose2DPtr>
163{
164 static Node encode(const com::robotraconteur::geometry::NamedPose2DPtr& rhs);
165 static bool decode(const Node& node, com::robotraconteur::geometry::NamedPose2DPtr& rhs);
166};
167
168template <>
169struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::NamedSpatialVelocityPtr>
170{
171 static Node encode(const com::robotraconteur::geometry::NamedSpatialVelocityPtr& rhs);
172 static bool decode(const Node& node, com::robotraconteur::geometry::NamedSpatialVelocityPtr& rhs);
173};
174
175template <>
176struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::NamedSpatialAccelerationPtr>
177{
178 static Node encode(const com::robotraconteur::geometry::NamedSpatialAccelerationPtr& rhs);
179 static bool decode(const Node& node, com::robotraconteur::geometry::NamedSpatialAccelerationPtr& rhs);
180};
181
182template <>
183struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::NamedWrenchPtr>
184{
185 static Node encode(const com::robotraconteur::geometry::NamedWrenchPtr& rhs);
186 static bool decode(const Node& node, com::robotraconteur::geometry::NamedWrenchPtr& rhs);
187};
188
189template <>
190struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::NamedSpatialInertiaPtr>
191{
192 static Node encode(const com::robotraconteur::geometry::NamedSpatialInertiaPtr& rhs);
193 static bool decode(const Node& node, com::robotraconteur::geometry::NamedSpatialInertiaPtr& rhs);
194};
195
196template <>
197struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::BoundingBox2DPtr>
198{
199 static Node encode(const com::robotraconteur::geometry::BoundingBox2DPtr& rhs);
200 static bool decode(const Node& node, com::robotraconteur::geometry::BoundingBox2DPtr& rhs);
201};
202
203template <>
204struct ROBOTRACONTEUR_COMPANION_INFOPARSER_API convert<com::robotraconteur::geometry::BoundingBoxPtr>
205{
206 static Node encode(const com::robotraconteur::geometry::BoundingBoxPtr& rhs);
207 static bool decode(const Node& node, com::robotraconteur::geometry::BoundingBoxPtr& rhs);
208};
209
210} // namespace YAML