framed.h
Go to the documentation of this file.
1#pragma once
2
3#include <RobotAPI/libraries/aron/common/aron/framed.aron.generated.h>
4
6
7namespace armarx
8{
9 // Helper methods for code generation to convert json/aron to bo and vice versa
10 // UPDATE 29.06.2023 IT MAKES NO SENSE TO MERGE ARMARX::VARIANTS WITH ARON. THEREOFRE WE REMOVED THE ARMARX::VARIANTS.
11 // AS SOON AS CHRISTIANS GEOMETRY PACKAGE IN SIMOX IS READY, THE ARON TYPES SHOULD BE REPLACED WITH CORE TYPES FROM SIMOX!
12 // AND THESE METHODS NEED TO BE UPDATED!
13 namespace aron
14 {
15 template <class ReaderT>
17
18 void
19 read(ReaderT& aron_r, typename ReaderT::InputType& input, armarx::FramedPosition& ret)
20 {
21 arondto::FramedPosition aron;
22 aron.read(aron_r, input);
23
25 }
26
27 template <class WriterT>
28 requires data::isWriter<WriterT>
29
30 void
31 write(WriterT& aron_w,
32 const armarx::FramedPosition& input,
33 typename WriterT::ReturnType& ret,
34 const armarx::aron::Path& aron_p = armarx::aron::Path())
35 {
36 arondto::FramedPosition aron;
37 armarx::toAron(aron, input);
38 ret = aron.write(aron_w, aron_p);
39 }
40
41 template <class ReaderT>
42 requires data::isReader<ReaderT>
43
44 void
45 read(ReaderT& aron_r, typename ReaderT::InputType& input, armarx::FramedOrientation& ret)
46 {
47 arondto::FramedOrientation aron;
48 aron.read(aron_r, input);
49
51 }
52
53 template <class WriterT>
54 requires data::isWriter<WriterT>
55
56 void
57 write(WriterT& aron_w,
58 const armarx::FramedOrientation& input,
59 typename WriterT::ReturnType& ret,
60 const armarx::aron::Path& aron_p = armarx::aron::Path())
61 {
62 arondto::FramedOrientation aron;
63 armarx::toAron(aron, input);
64 ret = aron.write(aron_w, aron_p);
65 }
66
67 template <class ReaderT>
68 requires data::isReader<ReaderT>
69
70 void
71 read(ReaderT& aron_r, typename ReaderT::InputType& input, armarx::FramedPose& ret)
72 {
73 arondto::FramedPose aron;
74 aron.read(aron_r, input);
75
77 }
78
79 template <class WriterT>
80 requires data::isWriter<WriterT>
81
82 void
83 write(WriterT& aron_w,
84 const armarx::FramedPose& input,
85 typename WriterT::ReturnType& ret,
86 const armarx::aron::Path& aron_p = armarx::aron::Path())
87 {
88 arondto::FramedPose aron;
89 armarx::toAron(aron, input);
90 ret = aron.write(aron_w, aron_p);
91 }
92 } // namespace aron
93
94} // namespace armarx
The FramedOrientation class.
Definition FramedPose.h:216
The FramedPose class.
Definition FramedPose.h:281
The FramedPosition class.
Definition FramedPose.h:158
The Path class.
Definition Path.h:36
void read(ReaderT &aron_r, typename ReaderT::InputType &input, Eigen::Matrix< EigenT, rows, cols, options > &ret)
Definition eigen.h:23
void write(WriterT &aron_w, const Eigen::Matrix< EigenT, rows, cols, options > &input, typename WriterT::ReturnType &ret, const armarx::aron::Path &aron_p=armarx::aron::Path())
Definition eigen.h:138
This file offers overloads of toIce() and fromIce() functions for STL container types.
void toAron(arondto::PackagePath &dto, const PackageFileLocation &bo)
void fromAron(const arondto::PackagePath &dto, PackageFileLocation &bo)