#include <InPortBase.h>
Public Member Functions | |
InPortBase (const char *name, const char *data_type) | |
Constructor. | |
virtual | ~InPortBase (void) |
Destructor. | |
void | init (coil::Properties &prop) |
Initializing properties. | |
virtual bool | read ()=0 |
It is a virtual method that is called from RTObject_impl::readAll(). This method reads out data from DataPort. | |
coil::Properties & | properties () |
Get properties. | |
const std::vector < InPortConnector * > & | connectors () |
Connector list. | |
ConnectorInfoList | getConnectorProfiles () |
ConnectorProfile list. | |
coil::vstring | getConnectorIds () |
ConnectorId list. | |
coil::vstring | getConnectorNames () |
Connector name list. | |
InPortConnector * | getConnectorById (const char *id) |
Getting ConnectorProfile by ID. | |
InPortConnector * | getConnectorByName (const char *name) |
Getting Connector by name. | |
bool | getConnectorProfileById (const char *id, ConnectorInfo &prof) |
Getting ConnectorProfile by name. | |
bool | getConnectorProfileByName (const char *name, ConnectorInfo &prof) |
Getting ConnectorProfile by name. | |
virtual void | activateInterfaces () |
Activate all Port interfaces. | |
virtual void | deactivateInterfaces () |
Deactivate all Port interfaces. | |
void | addConnectorDataListener (ConnectorDataListenerType listener_type, ConnectorDataListener *listener, bool autoclean=true) |
Adding BufferDataListener type listener. | |
void | removeConnectorDataListener (ConnectorDataListenerType listener_type, ConnectorDataListener *listener) |
Removing BufferDataListener type listener. | |
void | addConnectorListener (ConnectorListenerType callback_type, ConnectorListener *listener, bool autoclean=true) |
Adding ConnectorListener type listener. | |
void | removeConnectorListener (ConnectorListenerType callback_type, ConnectorListener *listener) |
Removing BufferDataListener type listener. | |
bool | isLittleEndian () |
return it whether endian setting. | |
virtual ReturnCode_t | connect (ConnectorProfile &connector_profile) throw (CORBA::SystemException) |
[CORBA interface] Connect the Port | |
Public Attributes | |
DATAPORTSTATUS_ENUM typedef std::vector< InPortConnector * > | ConnectorList |
Protected Member Functions | |
virtual ReturnCode_t | publishInterfaces (ConnectorProfile &connector_profile) |
Publish interface information. | |
virtual ReturnCode_t | subscribeInterfaces (const ConnectorProfile &connector_profile) |
Subscribe to the interface. | |
virtual void | unsubscribeInterfaces (const ConnectorProfile &connector_profile) |
Disconnect the interface connection. | |
void | initProviders () |
InPort provider initialization. | |
void | initConsumers () |
OutPort consumer initialization. | |
bool | checkEndian (const coil::Properties &prop, bool &littleEndian) |
Checking endian flag of serializer. | |
InPortProvider * | createProvider (ConnectorProfile &cprof, coil::Properties &prop) |
InPort provider creation. | |
OutPortConsumer * | createConsumer (const ConnectorProfile &cprof, coil::Properties &prop) |
InPort provider creation. | |
InPortConnector * | createConnector (ConnectorProfile &cprof, coil::Properties &prop, InPortProvider *provider) |
InPortPushConnector creation. | |
InPortConnector * | createConnector (const ConnectorProfile &cprof, coil::Properties &prop, OutPortConsumer *consumer) |
InPortPullConnector creation. | |
Protected Attributes | |
bool | m_singlebuffer |
Buffer mode. | |
CdrBufferBase * | m_thebuffer |
Buffer. | |
coil::Properties | m_properties |
Properties. | |
coil::vstring | m_providerTypes |
Available providers. | |
coil::vstring | m_consumerTypes |
Available consumers. | |
ConnectorList | m_connectors |
Connection list. | |
bool | m_littleEndian |
Connected Endian. | |
ConnectorListeners | m_listeners |
ConnectorDataListener listener. |
Port for InPort.
This is an implementation class for the data input port.
RTC::InPortBase::InPortBase | ( | const char * | name, | |
const char * | data_type | |||
) |
Constructor.
Constructor
name | Port name | |
data_type | Data type |
virtual RTC::InPortBase::~InPortBase | ( | void | ) | [virtual] |
Destructor.
Destructor
virtual void RTC::InPortBase::activateInterfaces | ( | ) | [virtual] |
Activate all Port interfaces.
This operation activate all interfaces that is registered in the ports.
Implements RTC::PortBase.
void RTC::InPortBase::addConnectorDataListener | ( | ConnectorDataListenerType | listener_type, | |
ConnectorDataListener * | listener, | |||
bool | autoclean = true | |||
) |
Adding BufferDataListener type listener.
This operation adds certain listeners related to buffer writing and reading events. The following listener types are available.
Listeners should have the following function operator().
ConnectorDataListener:: operator()(const ConnectorProfile&, const cdrStream&)
The ownership of the given listener object is transferred to this OutPort object in default. The given listener object will be destroied automatically in the OutPort's dtor or if the listener is deleted by removeConnectorDataListener() function. If you want to keep ownership of the listener object, give "false" value to 3rd argument to inhibit automatic destruction.
listener_type | A listener type | |
listener | A pointer to a listener object | |
autoclean | A flag for automatic listener destruction |
void RTC::InPortBase::addConnectorListener | ( | ConnectorListenerType | callback_type, | |
ConnectorListener * | listener, | |||
bool | autoclean = true | |||
) |
Adding ConnectorListener type listener.
This operation adds certain listeners related to buffer writing and reading events. The following listener types are available.
Listeners should have the following function operator().
ConnectorListener::operator()(const ConnectorProfile&)
The ownership of the given listener object is transferred to this OutPort object in default. The given listener object will be destroied automatically in the OutPort's dtor or if the listener is deleted by removeConnectorListener() function. If you want to keep ownership of the listener object, give "false" value to 3rd argument to inhibit automatic destruction.
listener_type | A listener type | |
listener | A pointer to a listener object | |
autoclean | A flag for automatic listener destruction |
bool RTC::InPortBase::checkEndian | ( | const coil::Properties & | prop, | |
bool & | littleEndian | |||
) | [protected] |
Checking endian flag of serializer.
This operation checks endian flag of data serializer that is specified properties. If valid specification is found, this operation returns true and set argument littleEndian. True means little endian, false means big endian.
prop | Properties | |
littleEndian | Endian Information(true:little,false:big) |
false:There is no content though "Serializer" key exists. or ithe content is not "Little. " though "Serializer" key exists. or The content is not "little" or "big" though "Serializer" key exists.
virtual ReturnCode_t RTC::InPortBase::connect | ( | ConnectorProfile & | connector_profile | ) | throw (CORBA::SystemException) [virtual] |
[CORBA interface] Connect the Port
This operation establishes connection according to the given ConnectionProfile inforamtion. This function is premised on calling from mainly application program or tools.
connector_profile | The ConnectorProfile. |
Reimplemented from RTC::PortBase.
const std::vector<InPortConnector*>& RTC::InPortBase::connectors | ( | ) |
Connector list.
This operation returns connector list
InPortConnector* RTC::InPortBase::createConnector | ( | const ConnectorProfile & | cprof, | |
coil::Properties & | prop, | |||
OutPortConsumer * | consumer | |||
) | [protected] |
InPortPullConnector creation.
InPortConnector* RTC::InPortBase::createConnector | ( | ConnectorProfile & | cprof, | |
coil::Properties & | prop, | |||
InPortProvider * | provider | |||
) | [protected] |
InPortPushConnector creation.
OutPortConsumer* RTC::InPortBase::createConsumer | ( | const ConnectorProfile & | cprof, | |
coil::Properties & | prop | |||
) | [protected] |
InPort provider creation.
InPortProvider* RTC::InPortBase::createProvider | ( | ConnectorProfile & | cprof, | |
coil::Properties & | prop | |||
) | [protected] |
InPort provider creation.
virtual void RTC::InPortBase::deactivateInterfaces | ( | ) | [virtual] |
Deactivate all Port interfaces.
This operation deactivate all interfaces that is registered in the ports.
Implements RTC::PortBase.
InPortConnector* RTC::InPortBase::getConnectorById | ( | const char * | id | ) |
Getting ConnectorProfile by ID.
This operation returns Connector specified by ID.
id | Connector ID |
InPortConnector* RTC::InPortBase::getConnectorByName | ( | const char * | name | ) |
Getting Connector by name.
This operation returns Connector specified by name.
id | Connector ID |
coil::vstring RTC::InPortBase::getConnectorIds | ( | ) |
ConnectorId list.
This operation returns ConnectorId list
coil::vstring RTC::InPortBase::getConnectorNames | ( | ) |
Connector name list.
This operation returns Connector name list
bool RTC::InPortBase::getConnectorProfileById | ( | const char * | id, | |
ConnectorInfo & | prof | |||
) |
Getting ConnectorProfile by name.
This operation returns ConnectorProfile specified by name
id | Connector ID | |
prof | ConnectorProfile |
bool RTC::InPortBase::getConnectorProfileByName | ( | const char * | name, | |
ConnectorInfo & | prof | |||
) |
Getting ConnectorProfile by name.
This operation returns ConnectorProfile specified by name
id | Connector ID | |
prof | ConnectorProfile |
ConnectorInfoList RTC::InPortBase::getConnectorProfiles | ( | ) |
ConnectorProfile list.
This operation returns ConnectorProfile list
void RTC::InPortBase::init | ( | coil::Properties & | prop | ) |
Initializing properties.
This method initializes the port in the specified property.
prop | Property for setting ports |
void RTC::InPortBase::initConsumers | ( | ) | [protected] |
OutPort consumer initialization.
void RTC::InPortBase::initProviders | ( | ) | [protected] |
InPort provider initialization.
bool RTC::InPortBase::isLittleEndian | ( | ) |
return it whether endian setting.
coil::Properties& RTC::InPortBase::properties | ( | ) |
Get properties.
This method gets properties in the port.
virtual ReturnCode_t RTC::InPortBase::publishInterfaces | ( | ConnectorProfile & | connector_profile | ) | [protected, virtual] |
Publish interface information.
Publish interface information. Assign the Provider information that owned by this port to ConnectorProfile::properties
connector_profile | The connector profile |
Implements RTC::PortBase.
virtual bool RTC::InPortBase::read | ( | ) | [pure virtual] |
It is a virtual method that is called from RTObject_impl::readAll(). This method reads out data from DataPort.
Implemented in RTC::InPort< DataType >.
void RTC::InPortBase::removeConnectorDataListener | ( | ConnectorDataListenerType | listener_type, | |
ConnectorDataListener * | listener | |||
) |
Removing BufferDataListener type listener.
This operation removes a specified listener.
listener_type | A listener type | |
listener | A pointer to a listener object |
void RTC::InPortBase::removeConnectorListener | ( | ConnectorListenerType | callback_type, | |
ConnectorListener * | listener | |||
) |
Removing BufferDataListener type listener.
This operation removes a specified listener.
listener_type | A listener type | |
listener | A pointer to a listener object |
virtual ReturnCode_t RTC::InPortBase::subscribeInterfaces | ( | const ConnectorProfile & | connector_profile | ) | [protected, virtual] |
Subscribe to the interface.
Subscribe to interface. Derive Provider information that matches Consumer owned by the Port from ConnectorProfile::properties and set the Consumer to the reference of the CORBA object.
connector_profile | The connector profile |
Implements RTC::PortBase.
virtual void RTC::InPortBase::unsubscribeInterfaces | ( | const ConnectorProfile & | connector_profile | ) | [protected, virtual] |
Disconnect the interface connection.
Disconnect the interface connection. Release all objects set in Consumer associated with given ConnectorProfile and unscribe the interface.
connector_profile | The connector profile |
Implements RTC::PortBase.
DATAPORTSTATUS_ENUM typedef std::vector<InPortConnector*> RTC::InPortBase::ConnectorList |
ConnectorList RTC::InPortBase::m_connectors [protected] |
Connection list.
Referenced by RTC::InPort< DataType >::isEmpty(), RTC::InPort< DataType >::isNew(), and RTC::InPort< DataType >::read().
coil::vstring RTC::InPortBase::m_consumerTypes [protected] |
Available consumers.
ConnectorListeners RTC::InPortBase::m_listeners [protected] |
ConnectorDataListener listener.
bool RTC::InPortBase::m_littleEndian [protected] |
Connected Endian.
coil::Properties RTC::InPortBase::m_properties [protected] |
Properties.
coil::vstring RTC::InPortBase::m_providerTypes [protected] |
Available providers.
bool RTC::InPortBase::m_singlebuffer [protected] |
Buffer mode.
true:single buffer mode. false:multi buffer mode.
CdrBufferBase* RTC::InPortBase::m_thebuffer [protected] |
Buffer.