DataFieldsInfo.h File Reference
#include <chrono>
#include <string>
#include <ArmarXCore/core/exceptions/local/ExpressionException.h>
#include <ArmarXCore/interface/observers/VariantBase.h>
#include <ArmarXCore/observers/variant/TimedVariant.h>
#include <ArmarXCore/util/CPPUtility/trace.h>
#include "../EigenForwardDeclarations.h"
+ Include dependency graph for DataFieldsInfo.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  DataFieldsInfo< T, class >
 
struct  DataFieldsInfo< Eigen::Matrix4f, void >
 
struct  DataFieldsInfo< Eigen::Quaternionf, void >
 
struct  DataFieldsInfo< Eigen::Vector3f, void >
 
struct  DataFieldsInfo< IceUtil::Time, void >
 
struct  DataFieldsInfo< JointStatus, void >
 
struct  DataFieldsInfo< std::array< T, N >, void >
 
struct  DataFieldsInfo< std::chrono::microseconds, void >
 
struct  DataFieldsInfoBase< T >
 
struct  DataFieldsInfoHasNoFieldNames< T, class >
 
struct  DataFieldsInfoHasNoFieldNames< T, std::enable_if_t<(&DataFieldsInfo< T >::GetFieldNames==&DataFieldsInfoBase< T >::GetFieldNames)> >
 

Namespaces

 armarx
 This file offers overloads of toIce() and fromIce() functions for STL container types.
 
 armarx::introspection
 

Macros

#define make_DataFieldsInfo_for_eigen_vector(Type, TypeName, Num)
 
#define make_def_for_build_in_ice_type(Type)
 
#define make_def_for_type_mapped_to_long(Type)
 

Functions

 make_DataFieldsInfo_for_eigen_vector (d, Double, 2) make_DataFieldsInfo_for_eigen_vector(d
 
 make_DataFieldsInfo_for_eigen_vector (d, Double, 4) make_DataFieldsInfo_for_eigen_vector(d
 
 make_DataFieldsInfo_for_eigen_vector (d, Double, 6) make_DataFieldsInfo_for_eigen_vector(i
 
 make_DataFieldsInfo_for_eigen_vector (f, Float, 2) make_DataFieldsInfo_for_eigen_vector(f
 
 make_DataFieldsInfo_for_eigen_vector (f, Float, 5) make_DataFieldsInfo_for_eigen_vector(f
 
 make_DataFieldsInfo_for_eigen_vector (i, Int, 3) make_DataFieldsInfo_for_eigen_vector(i
 
 make_DataFieldsInfo_for_eigen_vector (i, Int, 5) make_DataFieldsInfo_for_eigen_vector(i
 
 make_def_for_build_in_ice_type (bool)
 
 make_def_for_build_in_ice_type (Ice::Byte)
 
 make_def_for_build_in_ice_type (Ice::Double)
 
 make_def_for_build_in_ice_type (Ice::Float)
 
 make_def_for_build_in_ice_type (Ice::Int)
 
 make_def_for_build_in_ice_type (Ice::Long)
 
 make_def_for_build_in_ice_type (Ice::Short)
 
 make_def_for_type_mapped_to_long (std::uint16_t)
 
 make_def_for_type_mapped_to_long (std::uint32_t)
 

Macro Definition Documentation

◆ make_DataFieldsInfo_for_eigen_vector

#define make_DataFieldsInfo_for_eigen_vector (   Type,
  TypeName,
  Num 
)
Value:
template <> \
struct DataFieldsInfo<Eigen::Vector##Num##Type, void> : \
DataFieldsInfoBase<Eigen::Vector##Num##Type> \
{ \
using DataFieldsInfoBase<Eigen::Vector##Num##Type>::GetDataFieldAs; \
static std::size_t \
GetNumberOfFields() \
{ \
return Num; \
} \
static void \
GetDataFieldAs(std::size_t i, const Eigen::Vector##Num##Type& field, std::string& out); \
static void \
GetDataFieldAs(std::size_t i, const Eigen::Vector##Num##Type& field, Ice::TypeName& out); \
static const std::type_info& GetDataFieldType(std::size_t i); \
static const std::vector<std::string>& GetFieldNames(); \
static std::map<std::string, VariantBasePtr> \
ToVariants(const Eigen::Vector##Num##Type& value, \
const std::string& name, \
const IceUtil::Time& timestamp, \
const std::string& frame = "", \
const std::string& agent = ""); \
};

Definition at line 200 of file DataFieldsInfo.h.

◆ make_def_for_build_in_ice_type

#define make_def_for_build_in_ice_type (   Type)

Definition at line 128 of file DataFieldsInfo.h.

◆ make_def_for_type_mapped_to_long

#define make_def_for_type_mapped_to_long (   Type)

Definition at line 357 of file DataFieldsInfo.h.

Vector
Eigen::Matrix< T, 3, 1 > Vector
Definition: UnscentedKalmanFilterTest.cpp:36
cxxopts::value
std::shared_ptr< Value > value()
Definition: cxxopts.hpp:926
armarx::aron::similarity::FloatSimilarity::Type
Type
The Type enum.
Definition: FloatSimilarity.h:8
armarx::armem::Time
armarx::core::time::DateTime Time
Definition: forward_declarations.h:13
armarx::introspection::GetDataFieldType
const std::type_info & GetDataFieldType(std::size_t i)
Definition: DataFieldsInfo.cpp:355