#include <DataSources.hpp>
Public Types | |
typedef boost::intrusive_ptr< BinaryDataSource< function > > | shared_ptr |
Public Types inherited from RTT::internal::DataSource< remove_cr< function::result_type >::type > | |
typedef boost::intrusive_ptr< const DataSource< remove_cr< function::result_type >::type > > | const_ptr |
typedef details::GetConstRef< remove_cr< function::result_type >::type >::type | const_reference_t |
typedef remove_cr< function::result_type >::type | result_t |
typedef boost::intrusive_ptr< DataSource< remove_cr< function::result_type >::type > > | shared_ptr |
typedef remove_cr< function::result_type >::type | value_t |
Public Types inherited from RTT::base::DataSourceBase | |
typedef boost::intrusive_ptr< const DataSourceBase > | const_ptr |
typedef boost::intrusive_ptr< DataSourceBase > | shared_ptr |
Public Member Functions | |
BinaryDataSource (typename DataSource< first_arg_t >::shared_ptr a, typename DataSource< second_arg_t >::shared_ptr b, function f) | |
virtual BinaryDataSource< function > * | clone () const |
virtual BinaryDataSource< function > * | copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const |
virtual value_t | get () const |
virtual void | reset () |
DataSource< value_t >::const_reference_t | rvalue () const |
virtual value_t | value () const |
Public Member Functions inherited from RTT::internal::DataSource< remove_cr< function::result_type >::type > | |
BOOST_STATIC_ASSERT (!details::HasConst< remove_cr< function::result_type >::type >::value) | |
virtual bool | evaluate () const |
void const * | getRawConstPointer () |
virtual std::string | getType () const |
virtual const types::TypeInfo * | getTypeInfo () const |
virtual std::string | getTypeName () const |
Public Member Functions inherited from RTT::base::DataSourceBase | |
virtual DataSourceBase * | copy (std::map< const DataSourceBase *, DataSourceBase * > &alreadyCloned) const =0 |
DataSourceBase () | |
void | deref () const |
virtual shared_ptr | getMember (const std::string &member_name) |
virtual shared_ptr | getMember (DataSourceBase::shared_ptr member_id, DataSourceBase::shared_ptr offset) |
virtual std::vector< std::string > | getMemberNames () const |
virtual shared_ptr | getParent () |
virtual void * | getRawPointer () |
virtual bool | isAssignable () const |
void | ref () const |
std::string | toString () |
virtual bool | update (DataSourceBase *other) |
virtual ActionInterface * | updateAction (DataSourceBase *other) |
virtual void | updated () |
std::ostream & | write (std::ostream &os) |
Private Types | |
typedef remove_cr< typename function::first_argument_type >::type | first_arg_t |
typedef remove_cr< typename function::second_argument_type >::type | second_arg_t |
typedef remove_cr< typename function::result_type >::type | value_t |
Private Attributes | |
function | fun |
value_t | mdata |
DataSource< first_arg_t >::shared_ptr | mdsa |
DataSource< second_arg_t >::shared_ptr | mdsb |
Additional Inherited Members | |
Static Public Member Functions inherited from RTT::internal::DataSource< remove_cr< function::result_type >::type > | |
static std::string | GetType () |
static const types::TypeInfo * | GetTypeInfo () |
static std::string | GetTypeName () |
static DataSource< remove_cr< function::result_type >::type > * | narrow (base::DataSourceBase *db) |
Static Public Member Functions inherited from RTT::base::DataSourceBase | |
static const_ptr | stack_const_ptr (const DataSourceBase *dsb) |
static shared_ptr | stack_shared_ptr (DataSourceBase *dsb) |
Protected Member Functions inherited from RTT::internal::DataSource< remove_cr< function::result_type >::type > | |
virtual | ~DataSource () |
Protected Member Functions inherited from RTT::base::DataSourceBase | |
virtual | ~DataSourceBase () |
Protected Attributes inherited from RTT::base::DataSourceBase | |
os::AtomicInt | refcount |
A generic binary composite DataSource. It takes a function object which is a model of the STL Adaptable Binary Function concept, and two DataSource's with result types matching the argument types of the given function. Its get() method then applies the function to the results of the get() methods of the two DataSource's given.
The parser system uses a hell of a lot of these for evaluating expressions, comparisons etc. I must say I think this is pretty cool ;) C++ rocks ! ;)
Definition at line 671 of file DataSources.hpp.
|
private |
Definition at line 675 of file DataSources.hpp.
|
private |
Definition at line 676 of file DataSources.hpp.
typedef boost::intrusive_ptr<BinaryDataSource<function> > RTT::internal::BinaryDataSource< function >::shared_ptr |
Definition at line 682 of file DataSources.hpp.
|
private |
Definition at line 674 of file DataSources.hpp.
|
inline |
Create a DataSource which returns the return value of a function f which is given argument a and b.
Definition at line 688 of file DataSources.hpp.
|
inlinevirtual |
Return a shallow clone of this DataSource. This method returns a duplicate of this instance which re-uses the DataSources this internal::DataSource holds reference to. The clone() function is thus a non-deep copy.
Implements RTT::internal::DataSource< remove_cr< function::result_type >::type >.
Definition at line 718 of file DataSources.hpp.
|
inlinevirtual |
Implements RTT::internal::DataSource< remove_cr< function::result_type >::type >.
Definition at line 723 of file DataSources.hpp.
|
inlinevirtual |
Return the data as type T.
Implements RTT::internal::DataSource< remove_cr< function::result_type >::type >.
Definition at line 695 of file DataSources.hpp.
|
inlinevirtual |
Reset the data to initial values.
Reimplemented from RTT::base::DataSourceBase.
Definition at line 712 of file DataSources.hpp.
|
inlinevirtual |
Get a const reference to the value of this DataSource. You must call evaluate() prior to calling this function in order to get the most recent value of this attribute.
Implements RTT::internal::DataSource< remove_cr< function::result_type >::type >.
Definition at line 707 of file DataSources.hpp.
|
inlinevirtual |
Return the result of the last evaluate() function. You must call evaluate() prior to calling this function in order to get the most recent value of this attribute.
Implements RTT::internal::DataSource< remove_cr< function::result_type >::type >.
Definition at line 702 of file DataSources.hpp.
|
private |
Definition at line 679 of file DataSources.hpp.
|
mutableprivate |
Definition at line 680 of file DataSources.hpp.
|
private |
Definition at line 677 of file DataSources.hpp.
|
private |
Definition at line 678 of file DataSources.hpp.