RTT::internal::create_sequence< List > Struct Template Reference

#include <CreateSequence.hpp>

Inheritance diagram for RTT::internal::create_sequence< List >:
Inheritance graph
[legend]

List of all members.


Detailed Description

template<class List>
struct RTT::internal::create_sequence< List >

This class can create three kinds of Boost Fusion Sequences.

sources() creates a fusion sequence of (Assignable)DataSource<T>::shared_ptr from an mpl sequence and a std::vector<DataSourceBase*>. Both must have same length. The mpl sequence is typically obtained from the function_types parameter_types traits class.

assignable() creates a fusion sequence of AssignableDataSource<T>::shared_ptr from an mpl sequence and a std::vector<DataSourceBase*>. Both must have same length. The mpl sequence is typically obtained from the function_types parameter_types traits class. If the mpl sequence elements contain const qualifiers, these are removed, so T is always a value type.

data() creates a fusion sequence of T,U,V,... from the fusion sequence returned by operator(). It contains the values of the data sources obtained by calling get().

copy() creates a fusion sequence of DataSource<T>::shared_ptr from an mpl sequence and a sequence returned by operator() to do the scripting copy/clone semantics on each element of the sequence.

This is a typical head-tail recursive implementation where operator() calls itself, but in another type specialisation.

Definition at line 181 of file CreateSequence.hpp.


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


rtt
Author(s): RTT Developers
autogenerated on Mon Oct 6 2014 03:13:58