BOSubObjectFinder< DTOType, BOType > Class Template Reference

Finds aron objects with a given type name prefix in aron variants and returns them as BOs. More...

#include <RobotAPI/libraries/aron/common/util/object_finders.h>

+ Inheritance diagram for BOSubObjectFinder< DTOType, BOType >:

Public Member Functions

 BOSubObjectFinder ()=default
 
const std::map< std::string, BOType > & getFoundObjects ()
 Get the objects that have been found.
 
MapElements getObjectElements (DataInput &elementData, TypeInput &elementType) override
 
void visitObjectOnEnter (DataInput &elementData, TypeInput &elementType) override
 
void visitUnknown (DataInput &elementData, TypeInput &elementType) override
 
 ~BOSubObjectFinder () override=default
 
- Public Member Functions inherited from RecursiveConstTypedVariantVisitor
type::Descriptor getDescriptor (DataInput &o, TypeInput &n) override
 
MapElements getDictElements (DataInput &o, TypeInput &t) override
 
ListElements getListElements (DataInput &o, TypeInput &t) override
 
MapElements getObjectElements (DataInput &o, TypeInput &t) override
 
PairElements getPairElements (DataInput &o, TypeInput &t) override
 
TupleElements getTupleElements (DataInput &o, TypeInput &t) override
 
virtual void visitAronVariant (const data::BoolPtr &, const type::BoolPtr &)
 
virtual void visitAronVariant (const data::DoublePtr &, const type::DoublePtr &)
 
virtual void visitAronVariant (const data::FloatPtr &, const type::FloatPtr &)
 
virtual void visitAronVariant (const data::IntPtr &, const type::IntEnumPtr &)
 
virtual void visitAronVariant (const data::IntPtr &, const type::IntPtr &)
 
virtual void visitAronVariant (const data::LongPtr &, const type::LongPtr &)
 
virtual void visitAronVariant (const data::NDArrayPtr &, const type::ImagePtr &)
 
virtual void visitAronVariant (const data::NDArrayPtr &, const type::MatrixPtr &)
 
virtual void visitAronVariant (const data::NDArrayPtr &, const type::NDArrayPtr &)
 
virtual void visitAronVariant (const data::NDArrayPtr &, const type::PointCloudPtr &)
 
virtual void visitAronVariant (const data::NDArrayPtr &, const type::QuaternionPtr &)
 
virtual void visitAronVariant (const data::StringPtr &, const type::StringPtr &)
 
virtual void visitAronVariantOnEnter (const data::DictPtr &, const type::DictPtr &)
 
virtual void visitAronVariantOnEnter (const data::DictPtr &, const type::ObjectPtr &)
 
virtual void visitAronVariantOnEnter (const data::ListPtr &, const type::ListPtr &)
 
virtual void visitAronVariantOnEnter (const data::ListPtr &, const type::PairPtr &)
 
virtual void visitAronVariantOnEnter (const data::ListPtr &, const type::TuplePtr &)
 
virtual void visitAronVariantOnExit (const data::DictPtr &, const type::DictPtr &)
 
virtual void visitAronVariantOnExit (const data::DictPtr &, const type::ObjectPtr &)
 
virtual void visitAronVariantOnExit (const data::ListPtr &, const type::ListPtr &)
 
virtual void visitAronVariantOnExit (const data::ListPtr &, const type::PairPtr &)
 
virtual void visitAronVariantOnExit (const data::ListPtr &, const type::TuplePtr &)
 
void visitBool (DataInput &, TypeInput &) override
 
void visitDictOnEnter (DataInput &, TypeInput &) override
 
void visitDictOnExit (DataInput &, TypeInput &) override
 
void visitDouble (DataInput &, TypeInput &) override
 
void visitFloat (DataInput &, TypeInput &) override
 
void visitImage (DataInput &, TypeInput &) override
 
void visitInt (DataInput &, TypeInput &) override
 
void visitIntEnum (DataInput &, TypeInput &) override
 
void visitListOnEnter (DataInput &, TypeInput &) override
 
void visitListOnExit (DataInput &, TypeInput &) override
 
void visitLong (DataInput &, TypeInput &) override
 
void visitMatrix (DataInput &, TypeInput &) override
 
void visitNDArray (DataInput &, TypeInput &) override
 
void visitObjectOnEnter (DataInput &, TypeInput &) override
 
void visitObjectOnExit (DataInput &i, TypeInput &j) override
 
void visitPairOnEnter (DataInput &, TypeInput &) override
 
void visitPairOnExit (DataInput &, TypeInput &) override
 
void visitPointCloud (DataInput &, TypeInput &) override
 
void visitQuaternion (DataInput &, TypeInput &) override
 
void visitString (DataInput &, TypeInput &) override
 
void visitTupleOnEnter (DataInput &, TypeInput &) override
 
void visitTupleOnExit (DataInput &, TypeInput &) override
 
virtual ~RecursiveConstTypedVariantVisitor ()=default
 
- Public Member Functions inherited from RecursiveTypedVisitor< const data::VariantPtr, const type::VariantPtr >
virtual MapElements getDictElements (DataInput &, TypeInput &)=0
 
virtual ListElements getListElements (DataInput &, TypeInput &)=0
 
virtual MapElements getObjectElements (DataInput &, TypeInput &)=0
 
virtual PairElements getPairElements (DataInput &, TypeInput &)=0
 
virtual TupleElements getTupleElements (DataInput &, TypeInput &)=0
 
virtual void visitAnyObject (DataInput &elementData, TypeInput &elementType)
 
virtual void visitBool (DataInput &elementData, TypeInput &elementType)
 
virtual void visitDictOnEnter (DataInput &elementData, TypeInput &elementType)
 
virtual void visitDictOnExit (DataInput &elementData, TypeInput &elementType)
 
virtual void visitDouble (DataInput &elementData, TypeInput &elementType)
 
virtual void visitFloat (DataInput &elementData, TypeInput &elementType)
 
virtual void visitImage (DataInput &elementData, TypeInput &elementType)
 
virtual void visitInt (DataInput &elementData, TypeInput &elementType)
 
virtual void visitIntEnum (DataInput &elementData, TypeInput &elementType)
 
virtual void visitListOnEnter (DataInput &elementData, TypeInput &elementType)
 
virtual void visitListOnExit (DataInput &elementData, TypeInput &elementType)
 
virtual void visitLong (DataInput &elementData, TypeInput &elementType)
 
virtual void visitMatrix (DataInput &elementData, TypeInput &elementType)
 
virtual void visitNDArray (DataInput &elementData, TypeInput &elementType)
 
virtual void visitObjectOnEnter (DataInput &elementData, TypeInput &elementType)
 
virtual void visitObjectOnExit (DataInput &elementData, TypeInput &elementType)
 
virtual void visitPairOnEnter (DataInput &elementData, TypeInput &elementType)
 
virtual void visitPairOnExit (DataInput &elementData, TypeInput &elementType)
 
virtual void visitPointCloud (DataInput &elementData, TypeInput &elementType)
 
virtual void visitQuaternion (DataInput &elementData, TypeInput &elementType)
 
virtual void visitString (DataInput &elementData, TypeInput &elementType)
 
virtual void visitTupleOnEnter (DataInput &elementData, TypeInput &elementType)
 
virtual void visitTupleOnExit (DataInput &elementData, TypeInput &elementType)
 
virtual void visitUnknown (DataInput &elementData, TypeInput &elementType)
 
virtual ~RecursiveTypedVisitor ()=default
 
- Public Member Functions inherited from TypedVisitorBase< const data::VariantPtr, const type::VariantPtr >
virtual type::Descriptor getDescriptor (DataInput &, TypeInput &)=0
 
virtual ~TypedVisitorBase ()=default
 

Additional Inherited Members

- Public Types inherited from RecursiveTypedVisitor< const data::VariantPtr, const type::VariantPtr >
using DataInput
 
using DataInputNonConst
 
using ListElements
 
using MapElements
 
using PairElements
 
using TupleElements
 
using TypeInput
 
using TypeInputNonConst
 
- Public Types inherited from TypedVisitorBase< const data::VariantPtr, const type::VariantPtr >
using DataInput
 
using TypeInput
 
- Static Public Member Functions inherited from RecursiveConstTypedVariantVisitor
static MapElements GetDictElements (DataInput &o, TypeInput &t)
 
static ListElements GetListElements (DataInput &o, TypeInput &t)
 
static MapElements GetObjectElements (DataInput &o, TypeInput &t)
 
static MapElements GetObjectElementsWithNullType (DataInput &o, TypeInput &t)
 
static PairElements GetPairElements (DataInput &o, TypeInput &t)
 
static TupleElements GetTupleElements (DataInput &o, TypeInput &t)
 

Detailed Description

template<typename DTOType, typename BOType>
class armarx::aron::BOSubObjectFinder< DTOType, BOType >

Finds aron objects with a given type name prefix in aron variants and returns them as BOs.

Construct it with the prefix you want to search for, then use visitRecursive to run the finder over the variant to search. Get a map of paths to your BOs using getFoundObjects.

Template Parameters
DTOTypethe generated aron type of your data.
BOTypethe type of your final BO.

Definition at line 83 of file object_finders.h.

Constructor & Destructor Documentation

◆ BOSubObjectFinder()

template<typename DTOType, typename BOType>
BOSubObjectFinder ( )
default

◆ ~BOSubObjectFinder()

template<typename DTOType, typename BOType>
~BOSubObjectFinder ( )
overridedefault

Member Function Documentation

◆ getFoundObjects()

template<typename DTOType, typename BOType>
const std::map< std::string, BOType > & getFoundObjects ( )
inline

Get the objects that have been found.

The keys are strings instead of aron::Paths because those don't support comparisons.

Returns
map of paths to BOs.

Definition at line 97 of file object_finders.h.

◆ getObjectElements()

template<typename DTOType, typename BOType>
MapElements getObjectElements ( DataInput & elementData,
TypeInput & elementType )
inlineoverride

Definition at line 122 of file object_finders.h.

◆ visitObjectOnEnter()

template<typename DTOType, typename BOType>
void visitObjectOnEnter ( DataInput & elementData,
TypeInput & elementType )
inlineoverride

Definition at line 103 of file object_finders.h.

+ Here is the call graph for this function:

◆ visitUnknown()

template<typename DTOType, typename BOType>
void visitUnknown ( DataInput & elementData,
TypeInput & elementType )
inlineoverride

Definition at line 116 of file object_finders.h.


The documentation for this class was generated from the following file: