InPortPushConnector class. More...
#include <InPortPushConnector.h>
Public Member Functions | |
virtual void | activate () |
Connector activation. | |
virtual void | deactivate () |
Connector deactivation. | |
virtual ReturnCode | disconnect () |
disconnect | |
DATAPORTSTATUS_ENUM | InPortPushConnector (ConnectorInfo info, InPortProvider *provider, ConnectorListeners &listeners, CdrBufferBase *buffer=0) |
Constructor. | |
virtual ReturnCode | read (cdrMemoryStream &data) |
Reading data. | |
virtual | ~InPortPushConnector () |
Destructor. | |
Protected Member Functions | |
virtual CdrBufferBase * | createBuffer (ConnectorInfo &info) |
create buffer | |
void | onConnect () |
Invoke callback when connection is established. | |
void | onDisconnect () |
Invoke callback when connection is destroied. | |
Private Attributes | |
bool | m_deleteBuffer |
ConnectorListeners & | m_listeners |
A reference to a ConnectorListener. | |
InPortProvider * | m_provider |
the pointer to the InPortConsumer |
InPortPushConnector class.
Connector class of InPort for push type dataflow. When "push" is specified as dataflow_type at the time of establishing connection, this object is generated and owned by the InPort. This connector and OutPortPushConnector make a pair and realize push 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.
InPortPushConnector owns and manages the following objects.
Data written into the OutPort are passed to the InPortProvider::put() by OutPortConnector. The data is written into the buffer in the connector.
Definition at line 80 of file InPortPushConnector.h.
RTC::InPortPushConnector::InPortPushConnector | ( | ConnectorInfo | profile, |
InPortProvider * | provider, | ||
ConnectorListeners & | listeners, | ||
CdrBufferBase * | buffer = 0 |
||
) |
RTC::InPortPushConnector::~InPortPushConnector | ( | ) | [virtual] |
Destructor.
This operation calls disconnect(), which destructs and deletes the consumer, the publisher and the buffer.
Definition at line 64 of file InPortPushConnector.cpp.
virtual void RTC::InPortPushConnector::activate | ( | ) | [inline, virtual] |
Connector activation.
This operation activates this connector
Implements RTC::ConnectorBase.
Definition at line 217 of file InPortPushConnector.h.
CdrBufferBase * RTC::InPortPushConnector::createBuffer | ( | ConnectorInfo & | info | ) | [protected, virtual] |
create buffer
This function creates a buffer based on given information.
info | Connector information |
Definition at line 148 of file InPortPushConnector.cpp.
virtual void RTC::InPortPushConnector::deactivate | ( | ) | [inline, virtual] |
Connector deactivation.
This operation deactivates this connector
Implements RTC::ConnectorBase.
Definition at line 233 of file InPortPushConnector.h.
disconnect
This operation destruct and delete the consumer, the publisher and the buffer.
Implements RTC::InPortConnector.
Definition at line 119 of file InPortPushConnector.cpp.
void RTC::InPortPushConnector::onConnect | ( | ) | [protected] |
Invoke callback when connection is established.
Definition at line 163 of file InPortPushConnector.cpp.
void RTC::InPortPushConnector::onDisconnect | ( | ) | [protected] |
Invoke callback when connection is destroied.
Definition at line 175 of file InPortPushConnector.cpp.
ConnectorBase::ReturnCode RTC::InPortPushConnector::read | ( | cdrMemoryStream & | data | ) | [virtual] |
Reading data.
This function reads data from the buffer. If data is read properly, this function will return PORT_OK return code. Except normal return, BUFFER_EMPTY, TIMEOUT, PRECONDITION_NOT_MET and PORT_ERROR will be returned as error codes.
Implements RTC::InPortConnector.
Definition at line 78 of file InPortPushConnector.cpp.
bool RTC::InPortPushConnector::m_deleteBuffer [private] |
Definition at line 294 of file InPortPushConnector.h.
A reference to a ConnectorListener.
Definition at line 292 of file InPortPushConnector.h.
the pointer to the InPortConsumer
Definition at line 283 of file InPortPushConnector.h.