1 #ifndef RTT_TEMPLATE_COMPOSITION_FACTORY_HPP 2 #define RTT_TEMPLATE_COMPOSITION_FACTORY_HPP 5 #include "../Property.hpp" 6 #include "../PropertyBag.hpp" virtual base::DataSourceBase::shared_ptr getDataSource() const
Get an assignable base::DataSource through which this PropertyBase can be manipulated.
DataSource is a base class representing a generic way to read data of type T.
virtual bool composeTypeImpl(const PropertyBag &source, typename internal::AssignableDataSource< T >::reference_t result) const
User, implement this function in case you want to control reading the XML data format.
virtual bool decomposeTypeImpl(typename internal::AssignableDataSource< T >::const_reference_t source, PropertyBag &targetbag) const
User, implement this function in case you want to control writing the XML data format.
virtual bool composeType(base::DataSourceBase::shared_ptr source, base::DataSourceBase::shared_ptr result) const
Compose a type (target) from a DataSourceBase (source) containing its members.
boost::call_traits< value_t >::reference reference_t
virtual void set(param_t t)=0
Set this DataSource with a value.
A container for holding references to properties.
A factory for composing/decomposing and converting types to a form suitable for persistent storage...
reference_t value()
Access to the value of the Property.
virtual base::DataSourceBase::shared_ptr decomposeType(base::DataSourceBase::shared_ptr source) const
This default implementation sets up a PropertyBag which is passed to decomposeTypeImpl().
virtual const_reference_t rvalue() const =0
Get a const reference to the value of this DataSource.
A property represents a named value of any type with a description.
static std::ostream & endl(std::ostream &__os)
boost::intrusive_ptr< DataSource< T > > shared_ptr
boost::intrusive_ptr< AssignableDataSource< T > > shared_ptr
Use this type to store a pointer to an AssignableDataSource.
A DataSource which has set() methods.
static Logger & log()
As Instance(), but more userfriendly.
DataSource< T >::const_reference_t const_reference_t
boost::intrusive_ptr< DataSourceBase > shared_ptr
Use this type to store a pointer to a DataSourceBase.
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
T UserType
The given T parameter is the type for reading DataSources.
virtual void updated()
In case the internal::DataSource returns a 'reference' type, call this method to notify it that the d...