#include <RemoteChannelElement.hpp>
Public Member Functions | |
void | _add_ref () |
void | _remove_ref () |
virtual bool | data_sample (typename base::ChannelElement< T >::param_t sample) |
void | disconnect () ACE_THROW_SPEC((CORBA |
void | disconnect (bool writer_to_reader) ACE_THROW_SPEC((CORBA |
virtual bool | inputReady () |
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 |
RemoteChannelElement (CorbaTypeTransporter const &transport, DataFlowInterface *sender, PortableServer::POA_ptr poa, bool is_pull) | |
void | remoteDisconnect (bool writer_to_reader) ACE_THROW_SPEC((CORBA |
CORBA::Boolean | remoteSignal () ACE_THROW_SPEC((CORBA |
bool | signal () |
virtual void | transferSamples () |
bool | write (typename base::ChannelElement< T >::param_t sample) |
bool | write (const ::CORBA::Any &sample) ACE_THROW_SPEC((CORBA |
~RemoteChannelElement () | |
Private Attributes | |
DataFlowInterface * | msender |
PortableServer::ObjectId_var | oid |
bool | pull |
bool | valid |
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 RemoteChannelElement.hpp.
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.
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 82 of file RemoteChannelElement.hpp.
RTT::corba::RemoteChannelElement< T >::~RemoteChannelElement | ( | ) | [inline] |
Definition at line 98 of file RemoteChannelElement.hpp.
void RTT::corba::RemoteChannelElement< T >::_add_ref | ( | ) | [inline] |
Increase the reference count, called from the CORBA side
Definition at line 103 of file RemoteChannelElement.hpp.
void RTT::corba::RemoteChannelElement< T >::_remove_ref | ( | ) | [inline] |
Decrease the reference count, called from the CORBA side
Definition at line 106 of file RemoteChannelElement.hpp.
virtual bool RTT::corba::RemoteChannelElement< T >::data_sample | ( | typename base::ChannelElement< T >::param_t | sample | ) | [inline, virtual] |
Definition at line 348 of file RemoteChannelElement.hpp.
void RTT::corba::RemoteChannelElement< T >::disconnect | ( | ) | [inline] |
CORBA IDL function.
Definition at line 172 of file RemoteChannelElement.hpp.
void RTT::corba::RemoteChannelElement< T >::disconnect | ( | bool | writer_to_reader | ) | [inline, virtual] |
CORBA IDL function.
Reimplemented from RTT::base::ChannelElementBase.
Definition at line 209 of file RemoteChannelElement.hpp.
virtual bool RTT::corba::RemoteChannelElement< T >::inputReady | ( | ) | [inline, virtual] |
CORBA IDL function.
Reimplemented from RTT::base::ChannelElementBase.
Definition at line 362 of file RemoteChannelElement.hpp.
FlowStatus RTT::corba::RemoteChannelElement< T >::read | ( | typename base::ChannelElement< T >::reference_t | sample, |
bool | copy_old_data | ||
) | [inline] |
Definition at line 230 of file RemoteChannelElement.hpp.
CFlowStatus RTT::corba::RemoteChannelElement< T >::read | ( | ::CORBA::Any_out | sample, |
bool | copy_old_data | ||
) | [inline] |
CORBA IDL function.
Definition at line 276 of file RemoteChannelElement.hpp.
void RTT::corba::RemoteChannelElement< T >::remoteDisconnect | ( | bool | writer_to_reader | ) | [inline] |
Definition at line 187 of file RemoteChannelElement.hpp.
CORBA::Boolean RTT::corba::RemoteChannelElement< T >::remoteSignal | ( | ) | [inline] |
CORBA IDL function.
Definition at line 113 of file RemoteChannelElement.hpp.
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
Reimplemented from RTT::base::ChannelElementBase.
Definition at line 118 of file RemoteChannelElement.hpp.
virtual void RTT::corba::RemoteChannelElement< T >::transferSamples | ( | ) | [inline, virtual] |
This is used on to read the channel
Implements RTT::corba::CRemoteChannelElement_i.
Definition at line 133 of file RemoteChannelElement.hpp.
bool RTT::corba::RemoteChannelElement< T >::write | ( | typename base::ChannelElement< T >::param_t | sample | ) | [inline] |
This is used on the writing side, to avoid allocating an Any for each write
Definition at line 298 of file RemoteChannelElement.hpp.
bool RTT::corba::RemoteChannelElement< T >::write | ( | const ::CORBA::Any & | sample | ) | [inline] |
CORBA IDL function.
Definition at line 338 of file RemoteChannelElement.hpp.
DataFlowInterface* RTT::corba::RemoteChannelElement< T >::msender [private] |
Definition at line 72 of file RemoteChannelElement.hpp.
PortableServer::ObjectId_var RTT::corba::RemoteChannelElement< T >::oid [private] |
Definition at line 74 of file RemoteChannelElement.hpp.
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 70 of file RemoteChannelElement.hpp.
bool RTT::corba::RemoteChannelElement< T >::valid [private] |
Becomes false if we couldn't transfer data to remote
Definition at line 66 of file RemoteChannelElement.hpp.