Orocos Real-Time Toolkit  2.5.0
Classes | Functions
RTT::internal Namespace Reference

Classes which contain all implementation code for the RTT. More...

Classes

class  ArrayPartDataSource
 A DataSource which is used to manipulate a reference to a part of a data source holding a C-style array of elements. More...
class  AssignCommand
 This is a command that will assign the value of an expression to another at runtime. More...
class  AtomicMWSRQueue
 Create an atomic, non-blocking Multi-Writer Single-Reader FIFO for storing a pointer T by value. More...
class  AtomicQueue
 Create an atomic, non-blocking single ended queue (FIFO) for storing a pointer to T. More...
struct  AStore
 Store a bound argument which may be a reference, const reference or any other type. More...
struct  RStore
 Store a return value which may be a void, reference, const reference or any other type. More...
struct  is_arg_return
 This helper struct is required to filter out the AStore elements that don't need to be returned to the user when collect or return is called. More...
struct  is_out_arg
 Outargs are of type AStore and contain a pure reference. More...
struct  BindStorageImpl< 0, ToBind >
 When no arguments are to be stored, the implementation stores the function in a boost::function object. More...
struct  BindStorageImpl< 1, ToBind >
 Stores a pointer to a function and its arguments. More...
struct  BindStorage
 A helper-class for the Command implementation which stores the command and collition function objects. More...
class  ChannelBufferElement
 A connection element that can store a fixed number of data samples. More...
class  ChannelDataElement
 A connection element that stores a single data sample. More...
struct  Collect
 This struct takes the user's Function signature F and transforms it to the form required in the CollectImpl template specialisations. More...
struct  CollectBase
 This struct takes the user's Function signature F and transforms it to the form required in the CollectBaseImpl template specialisations. More...
struct  CollectType
 This helper struct decomposes F and creates Ft, as required by CollectBaseImpl. More...
class  ConnectionManager
 Manages connections between ports. More...
struct  LocalConnID
 Represents a local connection created by the ConnFactory. More...
struct  StreamConnID
 Represents a Stream connection created by the ConnFactory. More...
class  ConnFactory
 This class provides the basic tools to create channels that represent connections between two ports. More...
class  ConnID
 This class is used in places where a permanent representation of a reference to a connection is needed. More...
class  SimpleConnID
 A simplistic id that is only same with its own clones (and clones of clones). More...
class  ConnInputEndpoint
 This is a channel element that represents the input endpoint of a connection, i.e. More...
class  ConnOutputEndpoint
 This is a channel element that represents the output endpoint of a connection, i.e. More...
struct  GetArgument
 Helper class for extracting the bare pointer from a shared_ptr data source. More...
struct  GetArgument< Seq, Data, typename boost::enable_if< is_pure_reference< Data > >::type >
 In this case, Data is a pure reference and the first element of Seq is an AssignableDataSource. More...
struct  AssignHelper
 Helper class for avoiding assigning a bare pointer to a shared_ptr data source. More...
struct  UpdateHelper
 Helper to only update data sources that hold references. More...
struct  create_sequence_helper
 Helper to convert a single data source base to a DataSource or AssignableDataSource. More...
struct  create_sequence
 This class can create three kinds of Boost Fusion Sequences. More...
class  DataObjectDataSource
 A DataSource which is used to read a DataObject. More...
struct  bad_assignment
 This exception is thrown if the target and source type of an assignment of a DataSource with a base::DataSourceBase differ. More...
class  DataSource
 DataSource is a base class representing a generic way to read data of type T. More...
class  AssignableDataSource
 A DataSource which has set() methods. More...
class  DataSourceCommand
 A class that wraps a Command in a internal::DataSource<bool> interface. More...
struct  GenerateDataSource
 A function object which returns a vector of DataSources. More...
class  ValueDataSource
 A simple, yet very useful DataSource, which keeps a value, and returns it in its get() method. More...
class  ConstantDataSource
 A DataSource which holds a constant value and returns it in its get() method. More...
class  ConstReferenceDataSource
 A DataSource which is used to read a const reference to an external value. More...
class  ReferenceDataSource
 A DataSource which is used to manipulate a reference to an external value. More...
class  AliasDataSource
 A DataSource which is used to mirror another datasource. More...
class  ArrayDataSource
 A DataSource that holds a fixed size array, using the types::carray class. More...
class  LateReferenceDataSource
 A DataSource which is used to manipulate a reference to an external value, by means of a pointer, which can be set after the data source was created. More...
class  LateConstReferenceDataSource
 A DataSource which is used to manipulate a const reference to an external value, by means of a pointer, which can be set after the data source was created. More...
class  ActionAliasDataSource
 A DataSource which is used to execute an action and then return the value of another DataSource. More...
class  ActionAliasAssignableDataSource
 An AssignableDataSource which is used to execute an action and then return the value of another DataSource. More...
class  UnboundDataSource
 A special DataSource only to be used for if you understand the copy()/clone() semantics very well. More...
class  BinaryDataSource
 A generic binary composite DataSource. More...
class  UnaryDataSource
 A DataSource which returns the return value of a unary function. More...
class  NArityDataSource
 A generic N-arity composite DataSource. More...
struct  DSRStore
 Analogous to RStore, but specific for DataSourceStorage. More...
struct  DataSourceResultStorage
 Partial specialisations for storing a void, not a void or reference Wraps around RStore. More...
struct  DataSourceResultStorage< R const & >
struct  DataSourceArgStorage
 Partial specialisations for storing a (const) reference or not reference The trick here is to take a (const) reference data source to something that was already a reference, and copy to a value data source for something that is plain value. More...
struct  DataSourceArgStorage< A & >
 Partial specialisations for storing a reference. More...
struct  DataSourceArgStorage< A const & >
 Partial specialisations for storing a const reference. More...
struct  DataSourceStorageImpl< 0, DataType >
 When no arguments are to be stored. More...
struct  DataSourceStorageImpl< 1, DataType >
 Stores one data source. More...
struct  DataSourceStorage
 A helper-class for the Command implementation which stores the command and condition function objects. More...
struct  DataSourceTypeInfo< UnknownType >
 This class offers the default implementation of type information for an unknown type. More...
struct  DataSourceTypeInfo< const T & >
 These specialisations only serve to find out if a type T is a pointer, or reference, or... More...
struct  DataSourceTypeInfo< types::carray< T > >
 Specialisation for a types::carray<T> type info object. More...
struct  DataSourceTypeInfo
 Every DataSource of type T has a type info class which it can ask type information. More...
struct  DataSourceTypeInfo< void >
 (void) is a special case. More...
struct  FusedFunctorDataSource
 A DataSource that calls a functor of signature Signature which gets its arguments from other data sources. More...
struct  FusedMCallDataSource
 A DataSource that calls a method which gets its arguments from other data sources. More...
struct  FusedMSendDataSource
 A DataSource that sends a method which gets its arguments from other data sources. More...
struct  FusedMCollectDataSource
 A DataSource that collects the result of an asynchronous method which store its results in other data sources. More...
struct  FusedMSignal
 A Factory that reacts to a Signal by writing the arguments in data sources and calling an action. More...
struct  GetSignature
 Returns a function signature from a C or C++ member function pointer type. More...
struct  GetSignatureDS
 Returns a function signature from a C or C++ member function pointer type, suitable for DS operations. More...
class  GlobalEngine
 A process-wide execution engine that processes every asynchronous operation that is not being processed by a TaskContext. More...
class  GlobalService
 A process-wide services that hosts services not local to a single component. More...
class  InputPortSource
 This class represents a read port using the data source interface. More...
struct  Invoker
 Creates an invocation object with a function signature to invoke and an implementation in which an operator(args) is available which has this signature. More...
struct  InvokerBase
 This is the base class that defines the interface of all invocable method implementations. More...
class  List
 This object represents the default queue implementation used by Orocos objects. More...
class  ListLocked
 A simple lock-based list implementation to append or erase data of type T. More...
class  ListLockFree
 A simple lock-free list implementation to append or erase data of type T. More...
class  LocalOperationCallerImpl
 Implements call, send, collect, collectIfDone for all function arities. More...
struct  LocalOperationCaller
 A method which executes a local function. More...
class  LockedQueue
 A lock-based queue implementation to enqueue or dequeue a pointer of type T. More...
class  MWSRQueue
 This object represents the default Multi-Writer, Single-Reader queue implementation used by Orocos objects. More...
struct  NA
 This class is used to return a 'default' value when no value is available ('Not Available'). More...
struct  NA< void >
 Specialisation to return a void. More...
class  OffsetDataSource
 Calculates an offset to an element in memory, based on a type size and an index. More...
class  OffsetPartDataSource
 A DataSource which is used to manipulate a reference to a part of a data source holding a sequence of elements. More...
struct  OperationCallerBinder
 Very simple factory class to bind a member function to an object pointer and leave the arguments open. More...
class  OperationCallerC
 A template-less manager for OperationCaller calls. More...
class  OperationInterfacePartFused
 OperationInterfacePart implementation that uses boost::fusion to produce items. More...
class  SynchronousOperationInterfacePartFused
 OperationInterfacePart implementation that only provides synchronous access to an operation. More...
class  OperationInterfacePartFusedDS
 OperationInterfacePart implementation that uses boost::fusion to produce items. More...
class  PartDataSource
 A DataSource which is used to manipulate a reference to a part of a data source. More...
class  Queue
 This object represents the default Multi-Writer/Multi-Reader queue implementation used by Orocos objects. More...
class  Reference
 Object that may receive a reference to some data by means of a pointer or data source. More...
class  RemoteOperationCallerImpl
 A OperationCaller implementation which executes a remote function which is encapsulated in a OperationCallerC and SendHandleC object. More...
class  RemoteOperationCaller
 A OperationCaller implementation which delegates C++ to datasource conversions when C++ code tries to call remote methods, only available in an OperationInterfacePart, and not through an OperationBase. More...
struct  ReturnBase
 This is the base class that defines the interface of returning data from method invocations. More...
class  SendHandleC
 A template-less SendHandle manager. More...
class  Signal
 Very lightweight wrapper around the signalN classes that allows signals to be created where the number of arguments does not need to be part of the class name. More...
class  ConnectionBase
 A connection 'memorises' the connection between an event and an event handler function. More...
class  SignalBase
 The base signal class which stores connection objects. More...
class  TsPool
 A multi-reader multi-writer MemoryPool implementation. More...
class  UnMember
 This class converts a member function type R (X::)(Args) to a plain function type R (Args) which can be used by a boost::function or similar. More...
class  AddMember
 The inverse of UnMember. More...
class  ArgMember
 A complexer variant of UnMember: Convert a member function type to a function type which contains the object as first argument. More...
class  UnPointer
 Convert a function R (X::)(Args) to a plain function signature R(X::,Args) More...

Functions

template<class T >
std::ostream & operator<< (std::ostream &o, AStore< T > &a)
template<class T >
std::ostream & operator<< (std::ostream &o, RStore< T > &a)
void clearChannel (ConnectionManager::ChannelDescriptor &descriptor)
 Helper function to clear a connection.
bool is_same_id (ConnID *conn_id, ConnectionManager::ChannelDescriptor const &channel)
template<class Function >
base::DataSourceBasenewFunctorDataSource (Function f, const std::vector< base::DataSourceBase::shared_ptr > &args)
 Creates a data source that returns the result of a given function.
void RTT_API intrusive_ptr_add_ref (RTT::internal::IntrusiveStorage *p)
void RTT_API intrusive_ptr_release (RTT::internal::IntrusiveStorage *p)
template<typename MapT >
std::vector< typename
MapT::mapped_type > 
values (const MapT &map)
template<typename MapT >
std::vector< typename
MapT::key_type > 
keys (const MapT &map)
template<typename ResultT , typename Arg1T , typename Arg2T , typename Arg3T >
pointer_to_ternary_function
< ResultT, Arg1T, Arg2T, Arg3T > 
ptr_fun (ResultT(*fun)(Arg1T, Arg2T, Arg3T))
template<typename ResultT , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , typename Arg5T , typename Arg6T >
pointer_to_sixary_function
< ResultT, Arg1T, Arg2T, Arg3T,
Arg4T, Arg5T, Arg6T > 
ptr_fun (ResultT(*fun)(Arg1T, Arg2T, Arg3T, Arg4T, Arg5T, Arg6T))
void intrusive_ptr_add_ref (ConnectionBase *p)
void intrusive_ptr_release (ConnectionBase *p)
ConnectionBasegetPointer (ConnectionBase::shared_ptr c)

Detailed Description

Classes which contain all implementation code for the RTT.


Function Documentation

void RTT::internal::clearChannel ( ConnectionManager::ChannelDescriptor &  descriptor)

Helper function to clear a connection.

Parameters:
descriptor

Definition at line 75 of file ConnectionManager.cpp.

Referenced by RTT::internal::ConnectionManager::clear().

template<class Function >
base::DataSourceBase* RTT::internal::newFunctorDataSource ( Function  f,
const std::vector< base::DataSourceBase::shared_ptr > &  args 
)

Creates a data source that returns the result of a given function.

Use GenerateDataSource to create the arguments args from given data sources.

Parameters:
fThe function to embed in a data source. The return type of this function will be the return type of the created data source.
argsThe arguments given to the function f
Returns:
A new data source.
Exceptions:
wrong_number_of_args_exceptionwhen args.size() is not equal to the arity of f.
wrong_types_of_args_exceptionwhen one or more types in args do not match the expected types in f.

Definition at line 234 of file FusedFunctorDataSource.hpp.