|
Orocos Real-Time Toolkit
2.6.0
|
This interface defines the function a transport protocol must support in order to allow Orocos components to remotely communicate one data type. More...
#include <rtt/types/TypeTransporter.hpp>
Public Member Functions | |
| virtual base::ChannelElementBase::shared_ptr | createStream (base::PortInterface *port, const ConnPolicy &policy, bool is_sender) const =0 |
| Creates a streaming channel element for reading or writing over this transport. | |
This interface defines the function a transport protocol must support in order to allow Orocos components to remotely communicate one data type.
Typically, a transport will have more functions than these basic functions to implements it's transport-specific needs for each data type.
Definition at line 60 of file TypeTransporter.hpp.
| virtual base::ChannelElementBase::shared_ptr RTT::types::TypeTransporter::createStream | ( | base::PortInterface * | port, |
| const ConnPolicy & | policy, | ||
| bool | is_sender | ||
| ) | const [pure virtual] |
Creates a streaming channel element for reading or writing over this transport.
It returns a ChannelElementBase that provides the implementation of sending or receiving data through the transport. Both sender and receiver find each other using the channel_id argument. Transports that do not support streaming may return null
| port | The port for which this channel is setup. |
| channel_id | If the transport receives a non-empty channel_id, it will create a channel that connects to this id. If channel id is empty, it will be filled in with a unique identifier that identifies this channel. This allows the local caller to connect to the remote channel in a second invocation of createRemoteChannel. |
| is_sender | Set to true in case you will write() to this channel element, set it to false in case you will read() from this channel element. |
Implemented in RTT::corba::CorbaFallBackProtocol, RTT::mqueue::MQTemplateProtocol< T >, and RTT::corba::CorbaTypeTransporter.
Referenced by RTT::corba::RemoteInputPort::buildRemoteChannelOutput(), and RTT::internal::ConnFactory::createAndCheckStream().
1.7.6.1