#include <RemoteChannelElement.hpp>
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 93 of file RemoteChannelElement.hpp.
RTT::corba::RemoteChannelElement< T >::~RemoteChannelElement | ( | ) | [inline] |
Definition at line 113 of file RemoteChannelElement.hpp.
void RTT::corba::RemoteChannelElement< T >::_add_ref | ( | ) | [inline] |
Increase the reference count, called from the CORBA side
Definition at line 119 of file RemoteChannelElement.hpp.
void RTT::corba::RemoteChannelElement< T >::_remove_ref | ( | ) | [inline] |
Decrease the reference count, called from the CORBA side
Definition at line 122 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 185 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 222 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 243 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 286 of file RemoteChannelElement.hpp.
void RTT::corba::RemoteChannelElement< T >::remoteDisconnect | ( | bool | writer_to_reader | ) | [inline] |
Definition at line 200 of file RemoteChannelElement.hpp.
CORBA::Boolean RTT::corba::RemoteChannelElement< T >::remoteSignal | ( | ) | [inline] |
CORBA IDL function.
Definition at line 129 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 134 of file RemoteChannelElement.hpp.
virtual void RTT::corba::RemoteChannelElement< T >::transferSamples | ( | ) | [inline, virtual] |
Implements RTT::corba::CRemoteChannelElement_i.
Definition at line 149 of file RemoteChannelElement.hpp.
bool RTT::corba::RemoteChannelElement< T >::write | ( | typename base::ChannelElement< T >::param_t | sample | ) | [inline] |
Definition at line 306 of file RemoteChannelElement.hpp.
bool RTT::corba::RemoteChannelElement< T >::write | ( | const ::CORBA::Any & | sample | ) | [inline] |
CORBA IDL function.
Definition at line 340 of file RemoteChannelElement.hpp.
internal::LateConstReferenceDataSource<T>::shared_ptr RTT::corba::RemoteChannelElement< T >::const_ref_data_source [private] |
Definition at line 64 of file RemoteChannelElement.hpp.
DataFlowInterface* RTT::corba::RemoteChannelElement< T >::msender [private] |
Definition at line 78 of file RemoteChannelElement.hpp.
PortableServer::ObjectId_var RTT::corba::RemoteChannelElement< T >::oid [private] |
Definition at line 85 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 73 of file RemoteChannelElement.hpp.
internal::LateReferenceDataSource<T>::shared_ptr RTT::corba::RemoteChannelElement< T >::ref_data_source [private] |
Definition at line 63 of file RemoteChannelElement.hpp.
base::ChannelElement<T>::value_t RTT::corba::RemoteChannelElement< T >::sample [private] |
This is used on to read the channel
Definition at line 76 of file RemoteChannelElement.hpp.
bool RTT::corba::RemoteChannelElement< T >::valid [private] |
Becomes false if we couldn't transfer data to remote
Definition at line 69 of file RemoteChannelElement.hpp.
internal::ValueDataSource<T>::shared_ptr RTT::corba::RemoteChannelElement< T >::value_data_source [private] |
Definition at line 62 of file RemoteChannelElement.hpp.
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 83 of file RemoteChannelElement.hpp.