OpenRTM-aist 2.1.0
|
InPortPullConnector class. More...
#include <InPortPullConnector.h>
Public Member Functions | |
InPortPullConnector (ConnectorInfo info, OutPortConsumer *consumer, ConnectorListenersBase *listeners, CdrBufferBase *buffer=nullptr) | |
Constructor. | |
~InPortPullConnector () override | |
Destructor. | |
DataPortStatus | read (ByteDataStreamBase *data) override |
Destructor. | |
DataPortStatus | disconnect () override |
Disconnect connection. | |
void | activate () override |
Connector activation. | |
void | deactivate () override |
Connector deactivation. | |
void | unsubscribeInterface (const coil::Properties &prop) override |
![]() | |
InPortConnector (ConnectorInfo &info, ConnectorListenersBase *listeners, CdrBufferBase *buffer) | |
Constructor. | |
~InPortConnector () override | |
Destructor . | |
const ConnectorInfo & | profile () override |
Getting ConnectorInfo. | |
const char * | id () override |
Getting Connector ID. | |
const char * | name () override |
Getting Connector name. | |
CdrBufferBase * | getBuffer () override |
Getting Buffer. | |
template<class DataType > | |
DataPortStatus | read (DataType &data) |
virtual void | setEndian (bool endian_type) |
Setting an endian type. | |
virtual bool | isLittleEndian () |
Whether this connector's endian is little. | |
virtual BufferStatus | write (ByteData &cdr) |
bool | setOutPort (OutPortBase *directOutPort) |
template<typename DataType > | |
bool | getDirectData (DataType &data) |
![]() | |
virtual | ~ConnectorBase ()=default |
Destructor . | |
Protected Member Functions | |
void | onConnect () |
Invoke callback when connection is established . | |
void | onDisconnect () |
Invoke callback when connection is destroied . | |
Static Protected Member Functions | |
static CdrBufferBase * | createBuffer (ConnectorInfo &info) |
create buffer | |
Additional Inherited Members | |
![]() | |
Logger | rtclog |
Logger stream . | |
ConnectorInfo | m_profile |
ConnectorInfo . | |
ConnectorListenersBase * | m_listeners |
A reference to a ConnectorListener . | |
CdrBufferBase * | m_buffer |
Connector's buffer . | |
bool | m_littleEndian |
Connected Endian . | |
ConnectorListenersBase * | m_outPortListeners |
A pointer to a OutPort's ConnectorListener . | |
PortBase * | m_directOutPort |
OutProt pointer to the peer in the same process . | |
std::string | m_marshaling_type |
ByteDataStreamBase * | m_cdr |
InPortPullConnector class.
Connector class of InPort for pull type dataflow. When "pull" is specified as dataflow_type at the time of establishing connection, this object is generated and owned by the InPort. This connector and InPortPullConnector make a pair and realize pull type dataflow of data ports. One connector corresponds to one connection which provides a data stream. Connector is distinguished by ID of the UUID that is generated at establishing connection.
InPortPullConnector owns and manages the following objects.
Data written into the OutPort is passed to the OutPortPullConnector::write(), and is written into the buffer. Consequently, InPort::read() and InPortPullConnector::read() call OutPortConsumer::get(), and it reads data from the buffer of OutPortPullConnector. Finally data would be written into the InPortPullConnector's buffer.
RTC::InPortPullConnector::InPortPullConnector | ( | ConnectorInfo | info, |
OutPortConsumer * | consumer, | ||
ConnectorListenersBase * | listeners, | ||
CdrBufferBase * | buffer = nullptr |
||
) |
Constructor.
|
override |
Destructor.
This operation calls disconnect(), which destructs and deletes the consumer, the publisher and the buffer.
|
inlineoverridevirtual |
|
staticprotected |
create buffer
|
inlineoverridevirtual |
|
overridevirtual |
Disconnect connection.
Implements RTC::InPortConnector.
|
protected |
Invoke callback when connection is established .
|
protected |
Invoke callback when connection is destroied .
|
overridevirtual |
Destructor.
Implements RTC::InPortConnector.
|
overridevirtual |
Reimplemented from RTC::InPortConnector.