RTT::corba::RemoteChannelElement< T > Class Template Reference

#include <RemoteChannelElement.hpp>

Inheritance diagram for RTT::corba::RemoteChannelElement< T >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

void _add_ref ()
void _add_ref ()
void _remove_ref ()
void _remove_ref ()
virtual bool data_sample (typename base::ChannelElement< T >::param_t sample)
virtual bool data_sample (typename base::ChannelElement< T >::param_t sample)
void disconnect (bool writer_to_reader) ACE_THROW_SPEC((CORBA
void disconnect () ACE_THROW_SPEC((CORBA
void disconnect (bool writer_to_reader) ACE_THROW_SPEC((CORBA
void disconnect () ACE_THROW_SPEC((CORBA
virtual bool inputReady ()
virtual bool inputReady ()
CFlowStatus read (::CORBA::Any_out sample, bool copy_old_data) ACE_THROW_SPEC((CORBA
FlowStatus read (typename base::ChannelElement< T >::reference_t sample, bool copy_old_data)
CFlowStatus read (::CORBA::Any_out sample, bool copy_old_data) ACE_THROW_SPEC((CORBA
FlowStatus read (typename base::ChannelElement< T >::reference_t sample, bool copy_old_data)
 RemoteChannelElement (CorbaTypeTransporter const &transport, DataFlowInterface *sender, PortableServer::POA_ptr poa, bool is_pull)
 RemoteChannelElement (CorbaTypeTransporter const &transport, DataFlowInterface *sender, PortableServer::POA_ptr poa, bool is_pull)
void remoteDisconnect (bool writer_to_reader) ACE_THROW_SPEC((CORBA
void remoteDisconnect (bool writer_to_reader) ACE_THROW_SPEC((CORBA
CORBA::Boolean remoteSignal () ACE_THROW_SPEC((CORBA
CORBA::Boolean remoteSignal () ACE_THROW_SPEC((CORBA
bool signal ()
bool signal ()
virtual void transferSamples ()
virtual void transferSamples ()
bool write (const ::CORBA::Any &sample) ACE_THROW_SPEC((CORBA
bool write (typename base::ChannelElement< T >::param_t sample)
bool write (const ::CORBA::Any &sample) ACE_THROW_SPEC((CORBA
bool write (typename base::ChannelElement< T >::param_t sample)
 ~RemoteChannelElement ()
 ~RemoteChannelElement ()

Private Attributes

internal::ValueDataSource< T >
::shared_ptr 
data_source
DataFlowInterfacemsender
PortableServer::ObjectId_var oid
bool pull
base::ChannelElement< T >::value_t sample
bool valid
CORBA::Any * write_any

Detailed Description

template<typename T>
class RTT::corba::RemoteChannelElement< T >

Implements the CRemoteChannelElement of the CORBA IDL interface. It converts the C++ calls into CORBA calls and vice versa. A read will cause a call to the remote channel (which is of the same type of this RemoteChannelElement) which returns an Any with the data. A similar mechanism is in place for a write.

Definition at line 58 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.


Constructor & Destructor Documentation

template<typename T>
RTT::corba::RemoteChannelElement< T >::RemoteChannelElement ( CorbaTypeTransporter const &  transport,
DataFlowInterface sender,
PortableServer::POA_ptr  poa,
bool  is_pull 
) [inline]

Create a channel element for remote data exchange.

Parameters:
transport The type specific object that will be used to marshal the data.
poa The POA that manages the underlying CRemoteChannelElement_i.

Definition at line 91 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
RTT::corba::RemoteChannelElement< T >::~RemoteChannelElement (  )  [inline]
template<typename T>
RTT::corba::RemoteChannelElement< T >::RemoteChannelElement ( CorbaTypeTransporter const &  transport,
DataFlowInterface sender,
PortableServer::POA_ptr  poa,
bool  is_pull 
) [inline]

Create a channel element for remote data exchange.

Parameters:
transport The type specific object that will be used to marshal the data.
poa The POA that manages the underlying CRemoteChannelElement_i.

Definition at line 91 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
RTT::corba::RemoteChannelElement< T >::~RemoteChannelElement (  )  [inline]

Member Function Documentation

template<typename T>
void RTT::corba::RemoteChannelElement< T >::_add_ref (  )  [inline]

Increase the reference count, called from the CORBA side

Definition at line 114 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
void RTT::corba::RemoteChannelElement< T >::_add_ref (  )  [inline]

Increase the reference count, called from the CORBA side

Definition at line 114 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
void RTT::corba::RemoteChannelElement< T >::_remove_ref (  )  [inline]

Decrease the reference count, called from the CORBA side

Definition at line 117 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
void RTT::corba::RemoteChannelElement< T >::_remove_ref (  )  [inline]

Decrease the reference count, called from the CORBA side

Definition at line 117 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

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

CORBA IDL function.

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 217 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
void RTT::corba::RemoteChannelElement< T >::disconnect ( void   )  [inline]

CORBA IDL function.

Definition at line 180 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
void RTT::corba::RemoteChannelElement< T >::disconnect ( bool  writer_to_reader  )  [inline, virtual]

CORBA IDL function.

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 217 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
void RTT::corba::RemoteChannelElement< T >::disconnect (  )  [inline]

CORBA IDL function.

Definition at line 180 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
virtual bool RTT::corba::RemoteChannelElement< T >::inputReady (  )  [inline, virtual]

CORBA IDL function.

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 355 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
virtual bool RTT::corba::RemoteChannelElement< T >::inputReady (  )  [inline, virtual]

CORBA IDL function.

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 355 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
CFlowStatus RTT::corba::RemoteChannelElement< T >::read ( ::CORBA::Any_out  sample,
bool  copy_old_data 
) [inline]

CORBA IDL function.

Definition at line 282 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
FlowStatus RTT::corba::RemoteChannelElement< T >::read ( typename base::ChannelElement< T >::reference_t  sample,
bool  copy_old_data 
) [inline]
template<typename T>
CFlowStatus RTT::corba::RemoteChannelElement< T >::read ( ::CORBA::Any_out  sample,
bool  copy_old_data 
) [inline]

CORBA IDL function.

Definition at line 282 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
FlowStatus RTT::corba::RemoteChannelElement< T >::read ( typename base::ChannelElement< T >::reference_t  sample,
bool  copy_old_data 
) [inline]
template<typename T>
void RTT::corba::RemoteChannelElement< T >::remoteDisconnect ( bool  writer_to_reader  )  [inline]
template<typename T>
void RTT::corba::RemoteChannelElement< T >::remoteDisconnect ( bool  writer_to_reader  )  [inline]
template<typename T>
CORBA::Boolean RTT::corba::RemoteChannelElement< T >::remoteSignal (  )  [inline]

CORBA IDL function.

Definition at line 124 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
CORBA::Boolean RTT::corba::RemoteChannelElement< T >::remoteSignal (  )  [inline]

CORBA IDL function.

Definition at line 124 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
bool RTT::corba::RemoteChannelElement< T >::signal (  )  [inline, virtual]

Signals that there is new data available on this channel By default, the channel element forwards the call to its output

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 from RTT::base::ChannelElementBase.

Definition at line 129 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
bool RTT::corba::RemoteChannelElement< T >::signal (  )  [inline, virtual]

Signals that there is new data available on this channel By default, the channel element forwards the call to its output

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 from RTT::base::ChannelElementBase.

Definition at line 129 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
virtual void RTT::corba::RemoteChannelElement< T >::transferSamples (  )  [inline, virtual]
template<typename T>
virtual void RTT::corba::RemoteChannelElement< T >::transferSamples (  )  [inline, virtual]
template<typename T>
bool RTT::corba::RemoteChannelElement< T >::write ( const ::CORBA::Any &  sample  )  [inline]

CORBA IDL function.

Definition at line 333 of file rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
bool RTT::corba::RemoteChannelElement< T >::write ( typename base::ChannelElement< T >::param_t  sample  )  [inline]
template<typename T>
bool RTT::corba::RemoteChannelElement< T >::write ( const ::CORBA::Any &  sample  )  [inline]

CORBA IDL function.

Definition at line 333 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

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

Member Data Documentation

template<typename T>
DataFlowInterface * RTT::corba::RemoteChannelElement< T >::msender [private]
template<typename T>
PortableServer::ObjectId_var RTT::corba::RemoteChannelElement< T >::oid [private]
template<typename T>
bool RTT::corba::RemoteChannelElement< T >::pull [private]

In pull mode, we don't send data, just signal it and remote must read it back.

Definition at line 71 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
base::ChannelElement< T >::value_t RTT::corba::RemoteChannelElement< T >::sample [private]

This is used on to read the channel

Definition at line 74 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
bool RTT::corba::RemoteChannelElement< T >::valid [private]

Becomes false if we couldn't transfer data to remote

Definition at line 67 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.

template<typename T>
CORBA::Any * RTT::corba::RemoteChannelElement< T >::write_any [private]

This is used on the writing side, to avoid allocating an Any for each write

Definition at line 81 of file install/include/rtt/transports/corba/RemoteChannelElement.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


rtt
Author(s): RTT Developers
autogenerated on Fri Jan 11 09:49:54 2013