armarx::aron Namespace Reference

Namespaces

 codegenerator
 
 component_config
 
 conversion
 
 converter
 
 cpp
 
 data
 A convenience header to include all aron files (full include, not forward declared)
 
 detail
 
 eigen
 
 error
 
 framed
 
 packagepath
 
 similarity
 
 simox
 
 time
 
 type
 A convenience header to include all aron files (full include, not forward declared)
 
 typereader
 

Classes

class  BOSubObjectFinder
 Finds aron objects with a given type name prefix in aron variants and returns them as BOs. More...
 
class  DataDisplayVisitor
 
class  Path
 The Path class. More...
 
class  StringStreamMixin
 
class  SubObjectFinder
 Finds aron objects with a given type name prefix in aron variants. More...
 
class  TypedDataDisplayVisitor
 
struct  TypeName
 
struct  TypeName< bool >
 
struct  TypeName< double >
 
struct  TypeName< float >
 
struct  TypeName< int >
 
struct  TypeName< long >
 
struct  TypeName< short >
 
struct  TypeName< std::string >
 

Functions

template<class BoT , class DtoT >
BoT fromAron (const DtoT &dto)
 
template<class DtoT , class BoT >
void fromAron (const DtoT &dto, bool dtoValid, BoT &bo, bool &boValid)
 
template<class DtoT , class BoT >
void fromAron (const DtoT &dto, bool dtoValid, std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void fromAron (const DtoT &dto, std::unique_ptr< BoT > &bo)
 
template<class DtoT , class BoT >
void fromAron (const std::optional< DtoT > &dto, std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void fromAron (const std::vector< DtoT > &dtos, std::vector< BoT > &bos)
 
template<class T >
void fromAron (const T &dto, T &bo)
 
 fromAron (dto, *bo)
 
template<typename... _Args>
aron::data::BoolPtr make_bool (_Args &&... args)
 
template<typename... _Args>
aron::data::DictPtr make_dict (_Args &&... args)
 
template<typename... _Args>
aron::data::DoublePtr make_double (_Args &&... args)
 
template<typename... _Args>
aron::data::FloatPtr make_float (_Args &&... args)
 
template<typename... _Args>
aron::data::IntPtr make_int (_Args &&... args)
 
template<typename... _Args>
aron::data::ListPtr make_list (_Args &&... args)
 
template<typename... _Args>
aron::data::LongPtr make_long (_Args &&... args)
 
template<typename... _Args>
aron::data::NDArrayPtr make_ndarray (_Args &&... args)
 
template<typename... _Args>
aron::data::StringPtr make_string (_Args &&... args)
 
aron read (aron_r, input)
 
template<class ReaderT >
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, armarx::core::time::DateTime &ret)
 
template<class ReaderT >
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, armarx::core::time::Duration &ret)
 
template<class ReaderT >
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, armarx::FramedOrientation &ret)
 
template<class ReaderT >
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, armarx::FramedPose &ret)
 
template<class ReaderT >
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, armarx::FramedPosition &ret)
 
template<class ReaderT , class EigenT , int cols, int options>
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, Eigen::Matrix< EigenT, Eigen::Dynamic, cols, options > &ret)
 
template<class ReaderT , class EigenT , int options>
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, Eigen::Matrix< EigenT, Eigen::Dynamic, Eigen::Dynamic, options > &ret)
 
template<class ReaderT , class EigenT , int rows, int cols, int options>
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, Eigen::Matrix< EigenT, rows, cols, options > &ret)
 
template<class ReaderT , class EigenT , int rows, int options>
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, Eigen::Matrix< EigenT, rows, Eigen::Dynamic, options > &ret)
 
template<class ReaderT , class EigenT >
requires data::isReader< ReaderT > void read (ReaderT &aron_r, typename ReaderT::InputType &input, Eigen::Quaternion< EigenT > &ret)
 
template<class DtoKeyT , class DtoValueT , class BoKeyT , class BoValueT >
 requires (!(detail::DtoAndBoAreSame< DtoKeyT, BoKeyT > and detail::DtoAndBoAreSame< DtoValueT, BoValueT >)) void toAron(std
 
class BoT requires (data::isReader< ReaderT > &&armarx::aron::cpp::isAronGeneratedClass< DtoT > &&!detail::DtoAndBoAreSame< DtoT, BoT >) inline void read(ReaderT &aron_r
 
template<class ReaderT , class T >
 requires (data::isReader< ReaderT > &&armarx::aron::cpp::isAronGeneratedClass< T >) inline void read(ReaderT &aron_r
 
template<class WriterT , class DtoT , class BoT >
 requires (data::isWriter< WriterT > &&armarx::aron::cpp::isAronGeneratedClass< DtoT > &&!detail::DtoAndBoAreSame< DtoT, BoT >) inline void write(WriterT &aron_w
 
template<class WriterT , class T >
 requires (data::isWriter< WriterT > &&armarx::aron::cpp::isAronGeneratedClass< T >) inline void write(WriterT &aron_w
 
template<class DtoT , class BoT >
 requires (not detail::is_optional< BoT >::value) void toAron(std
 
template<class DtoT , class BoT >
 requires (not detail::is_optional< DtoT >::value) void fromAron(DtoT &dto
 
template<class DtoT , class BoT >
DtoT toAron (const BoT &bo)
 
template<class DtoT , class BoT >
void toAron (DtoT &dto, bool &dtoValid, const BoT &bo, bool boValid)
 
template<class DtoT , class BoT >
void toAron (DtoT &dto, bool &dtoValid, const std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void toAron (DtoT &dto, const std::unique_ptr< BoT > &bo)
 
template<class DtoT , class BoT >
void toAron (std::optional< DtoT > &dto, const std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void toAron (std::vector< DtoT > &dtos, const std::vector< BoT > &bos)
 
template<class T >
void toAron (T &dto, const T &bo)
 Framework for converting ARON DTOs (Data Transfer Objects) to C++ BOs (Business Objects) and back. More...
 
template<class WriterT >
requires data::isWriter< WriterT > void write (WriterT &aron_w, const armarx::core::time::DateTime &input, typename WriterT::ReturnType &ret, const armarx::aron::Path &aron_p=armarx::aron::Path())
 
template<class WriterT >
requires data::isWriter< WriterT > void write (WriterT &aron_w, const armarx::core::time::Duration &input, typename WriterT::ReturnType &ret, const armarx::aron::Path &aron_p=armarx::aron::Path())
 
template<class WriterT >
requires data::isWriter< WriterT > void write (WriterT &aron_w, const armarx::FramedOrientation &input, typename WriterT::ReturnType &ret, const armarx::aron::Path &aron_p=armarx::aron::Path())
 
template<class WriterT >
requires data::isWriter< WriterT > void write (WriterT &aron_w, const armarx::FramedPose &input, typename WriterT::ReturnType &ret, const armarx::aron::Path &aron_p=armarx::aron::Path())
 
template<class WriterT >
requires data::isWriter< WriterT > void write (WriterT &aron_w, const armarx::FramedPosition &input, typename WriterT::ReturnType &ret, const armarx::aron::Path &aron_p=armarx::aron::Path())
 
template<class WriterT , class EigenT , int rows, int cols, int options>
requires data::isWriter< WriterT > 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())
 
template<class WriterT , class EigenT >
requires data::isWriter< WriterT > void write (WriterT &aron_w, const Eigen::Quaternion< EigenT > &input, typename WriterT::ReturnType &ret, const armarx::aron::Path &aron_p=armarx::aron::Path())
 

Variables

const T WriterT::ReturnType const armarx::aron::Patharon_p
 
const std::optional< BoT > & bo
 
ReaderT::InputType & input
 
ReaderT::InputType Tret
 

Function Documentation

◆ fromAron() [1/8]

BoT armarx::aron::fromAron ( const DtoT &  dto)

Definition at line 94 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ fromAron() [2/8]

void armarx::aron::fromAron ( const DtoT &  dto,
bool  dtoValid,
BoT &  bo,
bool &  boValid 
)

Definition at line 189 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ fromAron() [3/8]

void armarx::aron::fromAron ( const DtoT &  dto,
bool  dtoValid,
std::optional< BoT > &  bo 
)

Definition at line 217 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ fromAron() [4/8]

void armarx::aron::fromAron ( const DtoT &  dto,
std::unique_ptr< BoT > &  bo 
)

Definition at line 118 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ fromAron() [5/8]

void armarx::aron::fromAron ( const std::optional< DtoT > &  dto,
std::optional< BoT > &  bo 
)

Definition at line 141 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ fromAron() [6/8]

void armarx::aron::fromAron ( const std::vector< DtoT > &  dtos,
std::vector< BoT > &  bos 
)

Definition at line 243 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ fromAron() [7/8]

void armarx::aron::fromAron ( const T dto,
T bo 
)

Definition at line 79 of file aron_conversions.h.

+ Here is the caller graph for this function:

◆ fromAron() [8/8]

armarx::aron::fromAron ( dto  ,
bo 
)

◆ make_bool()

aron::data::BoolPtr armarx::aron::make_bool ( _Args &&...  args)

Definition at line 77 of file Bool.h.

+ Here is the caller graph for this function:

◆ make_dict()

aron::data::DictPtr armarx::aron::make_dict ( _Args &&...  args)

Definition at line 107 of file Dict.h.

+ Here is the caller graph for this function:

◆ make_double()

aron::data::DoublePtr armarx::aron::make_double ( _Args &&...  args)

Definition at line 77 of file Double.h.

+ Here is the caller graph for this function:

◆ make_float()

aron::data::FloatPtr armarx::aron::make_float ( _Args &&...  args)

Definition at line 77 of file Float.h.

+ Here is the caller graph for this function:

◆ make_int()

aron::data::IntPtr armarx::aron::make_int ( _Args &&...  args)

Definition at line 78 of file Int.h.

+ Here is the caller graph for this function:

◆ make_list()

aron::data::ListPtr armarx::aron::make_list ( _Args &&...  args)

Definition at line 99 of file List.h.

+ Here is the caller graph for this function:

◆ make_long()

aron::data::LongPtr armarx::aron::make_long ( _Args &&...  args)

Definition at line 77 of file Long.h.

◆ make_ndarray()

aron::data::NDArrayPtr armarx::aron::make_ndarray ( _Args &&...  args)

Definition at line 105 of file NDArray.h.

◆ make_string()

aron::data::StringPtr armarx::aron::make_string ( _Args &&...  args)

Definition at line 76 of file String.h.

+ Here is the caller graph for this function:

◆ read() [1/11]

aron armarx::aron::read ( aron_r  ,
input   
)

◆ read() [2/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
armarx::core::time::DateTime ret 
)

Definition at line 19 of file time.h.

+ Here is the call graph for this function:

◆ read() [3/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
armarx::core::time::Duration ret 
)

Definition at line 45 of file time.h.

+ Here is the call graph for this function:

◆ read() [4/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
armarx::FramedOrientation ret 
)

Definition at line 45 of file framed.h.

+ Here is the call graph for this function:

◆ read() [5/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
armarx::FramedPose ret 
)

Definition at line 71 of file framed.h.

+ Here is the call graph for this function:

◆ read() [6/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
armarx::FramedPosition ret 
)

Definition at line 19 of file framed.h.

+ Here is the call graph for this function:

◆ read() [7/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
Eigen::Matrix< EigenT, Eigen::Dynamic, cols, options > &  ret 
)

Definition at line 46 of file eigen.h.

◆ read() [8/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
Eigen::Matrix< EigenT, Eigen::Dynamic, Eigen::Dynamic, options > &  ret 
)

Definition at line 102 of file eigen.h.

◆ read() [9/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
Eigen::Matrix< EigenT, rows, cols, options > &  ret 
)

Definition at line 20 of file eigen.h.

+ Here is the caller graph for this function:

◆ read() [10/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
Eigen::Matrix< EigenT, rows, Eigen::Dynamic, options > &  ret 
)

Definition at line 74 of file eigen.h.

◆ read() [11/11]

requires data::isReader<ReaderT> void armarx::aron::read ( ReaderT &  aron_r,
typename ReaderT::InputType &  input,
Eigen::Quaternion< EigenT > &  ret 
)

Definition at line 146 of file eigen.h.

◆ requires() [1/7]

requires ( detail::DtoAndBoAreSame< DtoKeyT, BoKeyT > and detail::DtoAndBoAreSame< DtoValueT, BoValueT >)

Definition at line 256 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ requires() [2/7]

class BoT armarx::aron::requires ( data::isReader< ReaderT > &&armarx::aron::cpp::isAronGeneratedClass< DtoT > &&!detail::DtoAndBoAreSame< DtoT, BoT >  ) &

◆ requires() [3/7]

armarx::aron::requires ( data::isReader< ReaderT > &&armarx::aron::cpp::isAronGeneratedClass< T ) &

◆ requires() [4/7]

armarx::aron::requires ( data::isWriter< WriterT > &&armarx::aron::cpp::isAronGeneratedClass< DtoT > &&!detail::DtoAndBoAreSame< DtoT, BoT >  ) &

◆ requires() [5/7]

armarx::aron::requires ( data::isWriter< WriterT > &&armarx::aron::cpp::isAronGeneratedClass< T ) &

◆ requires() [6/7]

armarx::aron::requires ( not detail::is_optional< BoT >::value  )

Definition at line 157 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ requires() [7/7]

armarx::aron::requires ( not detail::is_optional< DtoT >::value  ) &

◆ toAron() [1/7]

DtoT armarx::aron::toAron ( const BoT &  bo)

Definition at line 87 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ toAron() [2/7]

void armarx::aron::toAron ( DtoT &  dto,
bool &  dtoValid,
const BoT &  bo,
bool  boValid 
)

Definition at line 174 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ toAron() [3/7]

void armarx::aron::toAron ( DtoT &  dto,
bool &  dtoValid,
const std::optional< BoT > &  bo 
)

Definition at line 203 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ toAron() [4/7]

void armarx::aron::toAron ( DtoT &  dto,
const std::unique_ptr< BoT > &  bo 
)

Definition at line 109 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ toAron() [5/7]

void armarx::aron::toAron ( std::optional< DtoT > &  dto,
const std::optional< BoT > &  bo 
)

Definition at line 127 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ toAron() [6/7]

void armarx::aron::toAron ( std::vector< DtoT > &  dtos,
const std::vector< BoT > &  bos 
)

Definition at line 233 of file aron_conversions.h.

+ Here is the call graph for this function:

◆ toAron() [7/7]

void armarx::aron::toAron ( T dto,
const T bo 
)

Framework for converting ARON DTOs (Data Transfer Objects) to C++ BOs (Business Objects) and back.

To allow conversion between custom ARON and C++ types, declare two functions in the namespace of the BO:

// aron_conversions.h
namespace bo_namespace
{
void toAron(arondto::MyObject& dto, const MyObject& bo);
void fromAron(const arondto::MyObject& dto, MyObject& bo);
}

Note that the DTO always comes first, and the target object is non-const.

In the implementation,

// aron_conversions.cpp
#include "aron_conversions.h"
#include <Path/to/MyValue/aron_conversions.h>
void bo_namespace::toAron(arondto::MyObject& dto, const MyObject& bo)
{
dto.name = bo.name;
toAron(dto.myValue, bo.myValue);
}
void bo_namespace::fromAron(const arondto::MyObject& dto, MyObject& bo)
{
bo.name = dto.name;
fromAron(dto.myValue, bo.myValue);
}

Definition at line 74 of file aron_conversions.h.

+ Here is the caller graph for this function:

◆ write() [1/7]

requires data::isWriter<WriterT> void armarx::aron::write ( WriterT &  aron_w,
const armarx::core::time::DateTime input,
typename WriterT::ReturnType &  ret,
const armarx::aron::Path aron_p = armarx::aron::Path() 
)

Definition at line 31 of file time.h.

+ Here is the call graph for this function:

◆ write() [2/7]

requires data::isWriter<WriterT> void armarx::aron::write ( WriterT &  aron_w,
const armarx::core::time::Duration input,
typename WriterT::ReturnType &  ret,
const armarx::aron::Path aron_p = armarx::aron::Path() 
)

Definition at line 57 of file time.h.

+ Here is the call graph for this function:

◆ write() [3/7]

requires data::isWriter<WriterT> void armarx::aron::write ( WriterT &  aron_w,
const armarx::FramedOrientation input,
typename WriterT::ReturnType &  ret,
const armarx::aron::Path aron_p = armarx::aron::Path() 
)

Definition at line 57 of file framed.h.

+ Here is the call graph for this function:

◆ write() [4/7]

requires data::isWriter<WriterT> void armarx::aron::write ( WriterT &  aron_w,
const armarx::FramedPose input,
typename WriterT::ReturnType &  ret,
const armarx::aron::Path aron_p = armarx::aron::Path() 
)

Definition at line 83 of file framed.h.

+ Here is the call graph for this function:

◆ write() [5/7]

requires data::isWriter<WriterT> void armarx::aron::write ( WriterT &  aron_w,
const armarx::FramedPosition input,
typename WriterT::ReturnType &  ret,
const armarx::aron::Path aron_p = armarx::aron::Path() 
)

Definition at line 31 of file framed.h.

+ Here is the call graph for this function:

◆ write() [6/7]

requires data::isWriter<WriterT> void armarx::aron::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 at line 130 of file eigen.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ write() [7/7]

requires data::isWriter<WriterT> void armarx::aron::write ( WriterT &  aron_w,
const Eigen::Quaternion< EigenT > &  input,
typename WriterT::ReturnType &  ret,
const armarx::aron::Path aron_p = armarx::aron::Path() 
)

Definition at line 160 of file eigen.h.

+ Here is the call graph for this function:

Variable Documentation

◆ aron_p

const T WriterT::ReturnType const armarx::aron::Path& aron_p
Initial value:
{
ret = input.write(aron_w, aron_p);
}
template <class ReaderT

Definition at line 31 of file rw.h.

◆ bo

const std::optional<BoT>& bo
Initial value:
{
bo = BoT{}

Definition at line 166 of file aron_conversions.h.

◆ input

const BoT & input

Definition at line 19 of file rw.h.

◆ ret

const BoT WriterT::ReturnType & ret
Initial value:
{
ret.read(aron_r, input)

Definition at line 21 of file rw.h.

armarx::aron::ret
ReaderT::InputType T & ret
Definition: rw.h:21
armarx::aron::aron_p
const T WriterT::ReturnType const armarx::aron::Path & aron_p
Definition: rw.h:31
armarx::aron::input
ReaderT::InputType & input
Definition: rw.h:19
armarx::aron::toAron
void toAron(T &dto, const T &bo)
Framework for converting ARON DTOs (Data Transfer Objects) to C++ BOs (Business Objects) and back.
Definition: aron_conversions.h:74
armarx::fromAron
void fromAron(const arondto::PackagePath &dto, PackageFileLocation &bo)
armarx::armem::server::ltm::detail::mixin::Path
std::filesystem::path Path
Definition: DiskStorageMixin.h:17
armarx::toAron
void toAron(arondto::PackagePath &dto, const PackageFileLocation &bo)
armarx::aron::fromAron
void fromAron(const T &dto, T &bo)
Definition: aron_conversions.h:79
armarx::aron::bo
const std::optional< BoT > & bo
Definition: aron_conversions.h:166