Orocos Real-Time Toolkit
2.8.3
|
An interface which all classes which wish to visit a Property should implement. More...
#include <rtt/base/PropertyIntrospection.hpp>
Public Member Functions | |
virtual | ~PropertyIntrospection () |
virtual void | introspect (Property< bool > &v)=0 |
introspect a property of type bool. More... | |
virtual void | introspect (Property< char > &v)=0 |
introspect a property of type char. More... | |
virtual void | introspect (Property< int > &v)=0 |
introspect a property of type int. More... | |
virtual void | introspect (Property< unsigned int > &v)=0 |
introspect a property of type unsigned int. More... | |
virtual void | introspect (Property< double > &v)=0 |
introspect a property of type double. More... | |
virtual void | introspect (Property< std::string > &v)=0 |
introspect a property of type string. More... | |
template<class T > | |
void | introspect (Property< T > &v) |
Unknown types must decompose theirselves into the primitives. More... | |
virtual void | introspect (Property< PropertyBag > &p)=0 |
Callback for a Property which is a PropertyBag. More... | |
Protected Member Functions | |
virtual void | introspect (PropertyBase *p) |
Fall-back function of the last resort when the type is not decomposable and not known to the introspection interface. More... | |
void | introspect_T (PropertyBase *p) |
This function is called for any Property unknown to the introspection interface. More... | |
bool | introspectAndDecompose (PropertyBase *t) |
The default handler to execute when an unknown type is being decomposed. More... | |
An interface which all classes which wish to visit a Property should implement.
When you call PropertyBase::identify( PropertyIntrospection* ), the object will call one of below methods to expose its type to the caller.
Definition at line 60 of file PropertyIntrospection.hpp.
|
inlinevirtual |
Definition at line 82 of file PropertyIntrospection.hpp.
References RTT::base::PropertyBagVisitor::introspect().
|
protectedvirtual |
Fall-back function of the last resort when the type is not decomposable and not known to the introspection interface.
Called by introspect_T and does nothing by default. You can put code inhere to handle unknown types.
Implements RTT::base::PropertyBagVisitor.
Definition at line 58 of file Property.cpp.
Referenced by RTT::extras::decomposeProperty(), and RTT::Property< T >::identify().
|
pure virtualinherited |
Callback for a Property which is a PropertyBag.
Implemented in RTT::marsh::PropertyBagIntrospector.
|
pure virtual |
introspect a property of type bool.
v | The property to be introspectd. |
|
pure virtual |
introspect a property of type char.
v | The property to be introspectd. |
|
pure virtual |
introspect a property of type int.
v | The property to be introspectd. |
|
pure virtual |
introspect a property of type unsigned int.
v | The property to be introspectd. |
|
pure virtual |
introspect a property of type double.
v | The property to be introspectd. |
|
pure virtual |
introspect a property of type string.
v | The property to be introspectd. |
void RTT::base::PropertyIntrospection::introspect | ( | Property< T > & | v | ) |
Unknown types must decompose theirselves into the primitives.
Definition at line 50 of file PropertyIntrospection.inl.
References introspect_T().
|
protected |
This function is called for any Property unknown to the introspection interface.
It will basically call the generic decomposition function, and if that fails, pass p to introspect() where the subclass has a last chance to handle it.
Definition at line 63 of file Property.cpp.
Referenced by introspect().
|
protectedinherited |
The default handler to execute when an unknown type is being decomposed.
Definition at line 49 of file PropertyBagVisitor.cpp.
References RTT::types::TypeInfo::buildProperty(), RTT::types::TypeInfo::decomposeType(), RTT::deletePropertyBag(), RTT::base::PropertyBase::getDataSource(), RTT::base::PropertyBase::getDescription(), RTT::base::PropertyBase::getName(), RTT::base::PropertyBase::getTypeInfo(), RTT::base::PropertyBagVisitor::introspect(), and RTT::types::propertyDecomposition().
Referenced by RTT::marsh::PropertyBagIntrospector::introspect().