#include <DataSources.hpp>
Public Types | |
typedef boost::intrusive_ptr < UnboundDataSource< BoundType > > | shared_ptr |
typedef boost::intrusive_ptr < UnboundDataSource< BoundType > > | shared_ptr |
typedef BoundType::result_t | T |
typedef BoundType::result_t | T |
Public Member Functions | |
virtual BoundType * | clone () const |
virtual BoundType * | clone () const |
virtual UnboundDataSource < BoundType > * | copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &replace) const |
virtual UnboundDataSource < BoundType > * | copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &replace) const |
UnboundDataSource () | |
UnboundDataSource (T data) | |
UnboundDataSource () | |
UnboundDataSource (T data) | |
~UnboundDataSource () | |
~UnboundDataSource () |
A special DataSource only to be used for if you understand the copy()/clone() semantics very well.
UnboundDataSource is required to represent variables ('var') in program scripts. Otherwise copy/clone done in ParsedStateMachine will not work as expected.
It has different copy semantics in comparison to 'bound' DataSources (like ValueDataSource), being that, it returns new copies in copy(), and returns a clone() of the contained datasource in clone(). A clone() reduces this 'UnboundDataSource' to a 'BoundType' data source.
BoundType | The type to inherit from and to return in clone(). Typically a ValueDataSource or IndexedValueDataSource type. |
Definition at line 566 of file install/include/rtt/internal/DataSources.hpp.
typedef boost::intrusive_ptr< UnboundDataSource<BoundType> > RTT::internal::UnboundDataSource< BoundType >::shared_ptr |
Definition at line 571 of file rtt/internal/DataSources.hpp.
typedef boost::intrusive_ptr< UnboundDataSource<BoundType> > RTT::internal::UnboundDataSource< BoundType >::shared_ptr |
Definition at line 571 of file install/include/rtt/internal/DataSources.hpp.
typedef BoundType::result_t RTT::internal::UnboundDataSource< BoundType >::T |
Definition at line 570 of file rtt/internal/DataSources.hpp.
typedef BoundType::result_t RTT::internal::UnboundDataSource< BoundType >::T |
Definition at line 570 of file install/include/rtt/internal/DataSources.hpp.
RTT::internal::UnboundDataSource< BoundType >::UnboundDataSource | ( | T | data | ) |
RTT::internal::UnboundDataSource< BoundType >::UnboundDataSource | ( | ) |
RTT::internal::UnboundDataSource< BoundType >::~UnboundDataSource | ( | ) | [inline] |
Definition at line 577 of file install/include/rtt/internal/DataSources.hpp.
RTT::internal::UnboundDataSource< BoundType >::UnboundDataSource | ( | T | data | ) |
RTT::internal::UnboundDataSource< BoundType >::UnboundDataSource | ( | ) |
RTT::internal::UnboundDataSource< BoundType >::~UnboundDataSource | ( | ) | [inline] |
Definition at line 577 of file rtt/internal/DataSources.hpp.
virtual BoundType* RTT::internal::UnboundDataSource< BoundType >::clone | ( | ) | const [inline, virtual] |
Definition at line 580 of file rtt/internal/DataSources.hpp.
virtual BoundType* RTT::internal::UnboundDataSource< BoundType >::clone | ( | ) | const [inline, virtual] |
Definition at line 580 of file install/include/rtt/internal/DataSources.hpp.
virtual UnboundDataSource<BoundType>* RTT::internal::UnboundDataSource< BoundType >::copy | ( | std::map< const base::DataSourceBase *, base::DataSourceBase * > & | replace | ) | const [virtual] |
virtual UnboundDataSource<BoundType>* RTT::internal::UnboundDataSource< BoundType >::copy | ( | std::map< const base::DataSourceBase *, base::DataSourceBase * > & | replace | ) | const [virtual] |