Public Types | Public Member Functions
RTT::base::ChannelElement< T > Class Template Reference

#include <ChannelElement.hpp>

Inheritance diagram for RTT::base::ChannelElement< T >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef boost::call_traits< T >
::param_type 
param_t
typedef boost::call_traits< T >
::reference 
reference_t
typedef boost::intrusive_ptr
< ChannelElement< T > > 
shared_ptr
typedef T value_t

Public Member Functions

virtual bool data_sample (param_t sample)
virtual value_t data_sample ()
shared_ptr getInput ()
shared_ptr getOutput ()
virtual FlowStatus read (reference_t sample, bool copy_old_data)
virtual bool write (param_t sample)

Detailed Description

template<typename T>
class RTT::base::ChannelElement< T >

A typed version of ChannelElementBase. It defines generic methods that are type-specific (like write and read)

Definition at line 54 of file ChannelElement.hpp.


Member Typedef Documentation

template<typename T>
typedef boost::call_traits<T>::param_type RTT::base::ChannelElement< T >::param_t
template<typename T>
typedef boost::call_traits<T>::reference RTT::base::ChannelElement< T >::reference_t
template<typename T>
typedef boost::intrusive_ptr< ChannelElement<T> > RTT::base::ChannelElement< T >::shared_ptr

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 58 of file ChannelElement.hpp.

template<typename T>
typedef T RTT::base::ChannelElement< T >::value_t

Reimplemented in RTT::internal::ChannelBufferElement< T >.

Definition at line 57 of file ChannelElement.hpp.


Member Function Documentation

template<typename T>
virtual bool RTT::base::ChannelElement< T >::data_sample ( param_t  sample) [inline, virtual]

Provides a data sample to initialize this connection. This is used before the first write() in order to inform this connection of the size of the data. As such enough storage space can be allocated before the actual writing begins.

Returns:
false if an error occured that requires the channel to be invalidated.

Reimplemented in RTT::internal::ChannelBufferElement< T >, and RTT::internal::ChannelDataElement< T >.

Definition at line 82 of file ChannelElement.hpp.

template<typename T>
virtual value_t RTT::base::ChannelElement< T >::data_sample ( ) [inline, virtual]
template<typename T>
shared_ptr RTT::base::ChannelElement< T >::getInput ( ) [inline]

Returns the current input channel element. This will only return a valid channel element if another element has received this object as an argument to setOutput().

Returns:

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 68 of file ChannelElement.hpp.

template<typename T>
shared_ptr RTT::base::ChannelElement< T >::getOutput ( ) [inline]

Returns the next channel element in the channel's propagation direction

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 62 of file ChannelElement.hpp.

template<typename T>
virtual FlowStatus RTT::base::ChannelElement< T >::read ( reference_t  sample,
bool  copy_old_data 
) [inline, virtual]

Reads a sample from the connection. sample is a reference which will get updated if a sample is available. The method returns true if a sample was available, and false otherwise. If false is returned, then sample is not modified by the method

Reimplemented in RTT::internal::ChannelBufferElement< T >, and RTT::internal::ChannelDataElement< T >.

Definition at line 116 of file ChannelElement.hpp.

template<typename T>
virtual bool RTT::base::ChannelElement< T >::write ( param_t  sample) [inline, virtual]

Writes a new sample on this connection. sample is the sample to write.

Returns:
false if an error occured that requires the channel to be invalidated. In no ways it indicates that the sample has been received by the other side of the channel.

Reimplemented in RTT::internal::ChannelBufferElement< T >, and RTT::internal::ChannelDataElement< T >.

Definition at line 103 of file ChannelElement.hpp.


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


rtt
Author(s): RTT Developers
autogenerated on Sat Jun 8 2019 18:46:37