#include <InPortBase.h>
Public Member Functions | |
virtual void | activateInterfaces () |
Activate all Port interfaces. More... | |
void | addConnectorDataListener (ConnectorDataListenerType listener_type, ConnectorDataListener *listener, bool autoclean=true) |
Adding BufferDataListener type listener. More... | |
void | addConnectorListener (ConnectorListenerType callback_type, ConnectorListener *listener, bool autoclean=true) |
Adding ConnectorListener type listener. More... | |
virtual ReturnCode_t | connect (ConnectorProfile &connector_profile) throw (CORBA::SystemException) |
[CORBA interface] Connect the Port More... | |
const std::vector< InPortConnector * > & | connectors () |
Connector list. More... | |
virtual void | deactivateInterfaces () |
Deactivate all Port interfaces. More... | |
InPortConnector * | getConnectorById (const char *id) |
Getting ConnectorProfile by ID. More... | |
InPortConnector * | getConnectorByName (const char *name) |
Getting Connector by name. More... | |
coil::vstring | getConnectorIds () |
ConnectorId list. More... | |
coil::vstring | getConnectorNames () |
Connector name list. More... | |
bool | getConnectorProfileById (const char *id, ConnectorInfo &prof) |
Getting ConnectorProfile by name. More... | |
bool | getConnectorProfileByName (const char *name, ConnectorInfo &prof) |
Getting ConnectorProfile by name. More... | |
ConnectorInfoList | getConnectorProfiles () |
ConnectorProfile list. More... | |
void | init (coil::Properties &prop) |
Initializing properties. More... | |
InPortBase (const char *name, const char *data_type) | |
Constructor. More... | |
bool | isLittleEndian () |
return it whether endian setting. More... | |
coil::Properties & | properties () |
Get properties. More... | |
virtual bool | read ()=0 |
It is a virtual method that is called from RTObject_impl::readAll(). This method reads out data from DataPort. More... | |
void | removeConnectorDataListener (ConnectorDataListenerType listener_type, ConnectorDataListener *listener) |
Removing BufferDataListener type listener. More... | |
void | removeConnectorListener (ConnectorListenerType callback_type, ConnectorListener *listener) |
Removing BufferDataListener type listener. More... | |
virtual | ~InPortBase (void) |
Destructor. More... | |
Public Member Functions inherited from RTC::PortBase | |
virtual ReturnCode_t | disconnect (const char *connector_id) throw (CORBA::SystemException) |
[CORBA interface] Disconnect the Port More... | |
virtual ReturnCode_t | disconnect_all () throw (CORBA::SystemException) |
[CORBA interface] Disconnect the All Ports More... | |
virtual ConnectorProfile * | get_connector_profile (const char *connector_id) throw (CORBA::SystemException) |
[CORBA interface] Get the ConnectorProfile More... | |
virtual ConnectorProfileList * | get_connector_profiles () throw (CORBA::SystemException) |
[CORBA interface] Get the ConnectorProfileList of the Port More... | |
virtual PortProfile * | get_port_profile () throw (CORBA::SystemException) |
[CORBA interface] Get the PortProfile of the Port More... | |
const char * | getName () const |
Get the name of this Port. More... | |
const PortProfile & | getPortProfile () const |
Get the PortProfile of the Port. More... | |
PortService_ptr | getPortRef () |
Get the object reference of this Port. More... | |
const PortProfile & | getProfile () const |
Get the PortProfile of the Port. More... | |
virtual ReturnCode_t | notify_connect (ConnectorProfile &connector_profile) throw (CORBA::SystemException) |
[CORBA interface] Notify the Ports connection More... | |
virtual ReturnCode_t | notify_disconnect (const char *connector_id) throw (CORBA::SystemException) |
[CORBA interface] Notify the Ports disconnection More... | |
PortBase (const char *name="") | |
Constructor. More... | |
void | setName (const char *name) |
Set the name of this Port. More... | |
void | setOnConnected (ConnectionCallback *on_connected) |
Setting callback called on connection established. More... | |
void | setOnConnectionLost (ConnectionCallback *on_connection_lost) |
Setting callback called on connection lost. More... | |
void | setOnDisconnected (ConnectionCallback *on_disconnected) |
Setting callback called on disconnected. More... | |
void | setOnPublishInterfaces (ConnectionCallback *on_publish) |
Setting callback called on publish interfaces. More... | |
void | setOnSubscribeInterfaces (ConnectionCallback *on_subscribe) |
Setting callback called on publish interfaces. More... | |
void | setOnUnsubscribeInterfaces (ConnectionCallback *on_subscribe) |
Setting callback called on unsubscribe interfaces. More... | |
void | setOwner (RTObject_ptr owner) |
Set the owner RTObject of the Port. More... | |
void | setPortConnectListenerHolder (PortConnectListeners *portconnListeners) |
Setting PortConnectListener holder. More... | |
void | setPortRef (PortService_ptr port_ref) |
Set the object reference of this Port. More... | |
virtual | ~PortBase (void) |
Destructor. More... | |
Public Attributes | |
DATAPORTSTATUS_ENUM typedef std::vector< InPortConnector * > | ConnectorList |
Protected Member Functions | |
bool | checkEndian (const coil::Properties &prop, bool &littleEndian) |
Checking endian flag of serializer. More... | |
InPortConnector * | createConnector (ConnectorProfile &cprof, coil::Properties &prop, InPortProvider *provider) |
InPortPushConnector creation. More... | |
InPortConnector * | createConnector (const ConnectorProfile &cprof, coil::Properties &prop, OutPortConsumer *consumer) |
InPortPullConnector creation. More... | |
OutPortConsumer * | createConsumer (const ConnectorProfile &cprof, coil::Properties &prop) |
InPort provider creation. More... | |
InPortProvider * | createProvider (ConnectorProfile &cprof, coil::Properties &prop) |
InPort provider creation. More... | |
void | initConsumers () |
OutPort consumer initialization. More... | |
void | initProviders () |
InPort provider initialization. More... | |
virtual ReturnCode_t | publishInterfaces (ConnectorProfile &connector_profile) |
Publish interface information. More... | |
virtual ReturnCode_t | subscribeInterfaces (const ConnectorProfile &connector_profile) |
Subscribe to the interface. More... | |
virtual void | unsubscribeInterfaces (const ConnectorProfile &connector_profile) |
Disconnect the interface connection. More... | |
Protected Member Functions inherited from RTC::PortBase | |
virtual ReturnCode_t | _publishInterfaces (void) |
Publish interface information. More... | |
template<class ValueType > | |
void | addProperty (const char *key, ValueType value) |
Add NameValue data to PortProfile's properties. More... | |
bool | appendInterface (const char *name, const char *type_name, PortInterfacePolarity pol) |
Append an interface to the PortInterfaceProfile. More... | |
void | appendProperty (const char *key, const char *value) |
Append NameValue data to PortProfile's properties. More... | |
bool | checkPorts (::RTC::PortServiceList &ports) |
Existence of ports. More... | |
virtual ReturnCode_t | connectNext (ConnectorProfile &connector_profile) |
Call notify_connect() of the next Port. More... | |
bool | deleteInterface (const char *name, PortInterfacePolarity pol) |
Delete the interface registration from the PortInterfaceProfile. More... | |
virtual ReturnCode_t | disconnectNext (ConnectorProfile &connector_profile) |
Call notify_disconnect() of the next Port. More... | |
bool | eraseConnectorProfile (const char *id) |
Delete the ConnectorProfile. More... | |
ConnectorProfile | findConnProfile (const char *id) |
Find ConnectorProfile with id. More... | |
CORBA::Long | findConnProfileIndex (const char *id) |
Find ConnectorProfile with id. More... | |
const std::string | getUUID () const |
Generate the UUID. More... | |
bool | isEmptyId (const ConnectorProfile &connector_profile) const |
Check whether connector_id of ConnectorProfile is empty. More... | |
bool | isExistingConnId (const char *id) |
Check whether the given id exists in stored ConnectorProfiles. More... | |
void | onConnected (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
void | onConnectNextport (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
void | onDisconnected (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
void | onDisconnectNextport (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
void | onNotifyConnect (const char *portname, RTC::ConnectorProfile &profile) |
void | onNotifyDisconnect (const char *portname, RTC::ConnectorProfile &profile) |
void | onPublishInterfaces (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
void | onSubscribeInterfaces (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
void | onUnsubscribeInterfaces (const char *portname, RTC::ConnectorProfile &profile) |
virtual void | setConnectionLimit (int limit_value) |
Set the maximum number of connections. More... | |
void | setUUID (ConnectorProfile &connector_profile) const |
Generate and set the UUID to the ConnectorProfile. More... | |
void | updateConnectorProfile (const ConnectorProfile &connector_profile) |
Append or update the ConnectorProfile list. More... | |
void | updateConnectors () |
Disconnect ports that doesn't exist. More... | |
Additional Inherited Members | |
Public Types inherited from RTC::DataPortStatus | |
enum | Enum { PORT_OK = 0, PORT_ERROR, BUFFER_ERROR, BUFFER_FULL, BUFFER_EMPTY, BUFFER_TIMEOUT, SEND_FULL, SEND_TIMEOUT, RECV_EMPTY, RECV_TIMEOUT, INVALID_ARGS, PRECONDITION_NOT_MET, CONNECTION_LOST, UNKNOWN_ERROR } |
DataPortStatus return codes. More... | |
Static Public Member Functions inherited from RTC::DataPortStatus | |
static const char * | toString (DataPortStatus::Enum status) |
Convert DataPortStatus into the string. More... | |
Protected Types inherited from RTC::PortBase | |
typedef coil::Guard< coil::Mutex > | Guard |
Port for InPort.
This is an implementation class for the data input port.
Definition at line 67 of file InPortBase.h.
RTC::InPortBase::InPortBase | ( | const char * | name, |
const char * | data_type | ||
) |
Constructor.
Constructor
name | Port name |
data_type | Data type |
Definition at line 42 of file InPortBase.cpp.
|
virtual |
|
virtual |
Activate all Port interfaces.
This operation activate all interfaces that is registered in the ports.
Implements RTC::PortBase.
Definition at line 312 of file InPortBase.cpp.
void RTC::InPortBase::addConnectorDataListener | ( | ConnectorDataListenerType | listener_type, |
ConnectorDataListener * | listener, | ||
bool | autoclean = true |
||
) |
Adding BufferDataListener type listener.
Adding ConnectorDataListener 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 |
Definition at line 357 of file InPortBase.cpp.
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 |
Definition at line 396 of file InPortBase.cpp.
|
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.
Definition at line 773 of file InPortBase.cpp.
|
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.
Definition at line 443 of file InPortBase.cpp.
const std::vector< InPortConnector * > & RTC::InPortBase::connectors | ( | ) |
Connector list.
This operation returns connector list
Definition at line 158 of file InPortBase.cpp.
|
protected |
InPortPushConnector creation.
Definition at line 912 of file InPortBase.cpp.
|
protected |
InPortPullConnector creation.
Definition at line 972 of file InPortBase.cpp.
|
protected |
InPort provider creation.
Definition at line 867 of file InPortBase.cpp.
|
protected |
InPort provider creation.
Definition at line 813 of file InPortBase.cpp.
|
virtual |
Deactivate all Port interfaces.
This operation deactivate all interfaces that is registered in the ports.
Implements RTC::PortBase.
Definition at line 332 of file InPortBase.cpp.
InPortConnector * RTC::InPortBase::getConnectorById | ( | const char * | id | ) |
Getting ConnectorProfile by ID.
Getting Connector by ID.
This operation returns Connector specified by ID.
id | Connector ID |
Definition at line 225 of file InPortBase.cpp.
InPortConnector * RTC::InPortBase::getConnectorByName | ( | const char * | name | ) |
Getting Connector by name.
Getting ConnectorProfile by name.
This operation returns Connector specified by name.
id | Connector ID |
Definition at line 248 of file InPortBase.cpp.
coil::vstring RTC::InPortBase::getConnectorIds | ( | ) |
ConnectorId list.
This operation returns ConnectorId list
Definition at line 189 of file InPortBase.cpp.
coil::vstring RTC::InPortBase::getConnectorNames | ( | ) |
Connector name list.
This operation returns Connector name list
Definition at line 207 of file InPortBase.cpp.
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 |
Definition at line 271 of file InPortBase.cpp.
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 |
Definition at line 291 of file InPortBase.cpp.
ConnectorInfoList RTC::InPortBase::getConnectorProfiles | ( | ) |
ConnectorProfile list.
This operation returns ConnectorProfile list
Definition at line 171 of file InPortBase.cpp.
void RTC::InPortBase::init | ( | coil::Properties & | prop | ) |
Initializing properties.
This method initializes the port in the specified property.
prop | Property for setting ports |
Definition at line 96 of file InPortBase.cpp.
|
protected |
OutPort consumer initialization.
Definition at line 724 of file InPortBase.cpp.
|
protected |
InPort provider initialization.
Definition at line 675 of file InPortBase.cpp.
bool RTC::InPortBase::isLittleEndian | ( | ) |
return it whether endian setting.
return it whether endian setting is little
Definition at line 431 of file InPortBase.cpp.
coil::Properties & RTC::InPortBase::properties | ( | ) |
Get properties.
This method gets properties in the port.
Definition at line 144 of file InPortBase.cpp.
|
protectedvirtual |
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.
Definition at line 472 of file InPortBase.cpp.
|
pure virtual |
It is a virtual method that is called from RTObject_impl::readAll(). This method reads out data from DataPort.
Implemented in InPortBase::InPortBaseMock, OutPortBase::InPortMock< DataType >, RTC::InPort< DataType >, RTC::InPort< TimedFloat >, RTC::InPort< TimedOctet >, RTC::InPort< TimedFloatSeq >, RTC::InPort< TimedShortSeq >, RTC::InPort< TimedOctetSeq >, RTC::InPort< TimedLong >, RTC::InPort< TimedLongSeq >, RTC::InPort< TimedShort >, RTC::InPort< TimedDoubleSeq >, RTC::InPort< RTC::TimedFloat >, RTC::InPort< TimedDouble >, RTObject::InPortMock, and OutPortConnector::InPortMock.
void RTC::InPortBase::removeConnectorDataListener | ( | ConnectorDataListenerType | listener_type, |
ConnectorDataListener * | listener | ||
) |
Removing BufferDataListener type listener.
This operation removes a specified listener.
Definition at line 373 of file InPortBase.cpp.
void RTC::InPortBase::removeConnectorListener | ( | ConnectorListenerType | callback_type, |
ConnectorListener * | listener | ||
) |
Removing BufferDataListener type listener.
This operation removes a specified listener.
Definition at line 411 of file InPortBase.cpp.
|
protectedvirtual |
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.
Definition at line 551 of file InPortBase.cpp.
|
protectedvirtual |
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.
Definition at line 640 of file InPortBase.cpp.
DATAPORTSTATUS_ENUM typedef std::vector<InPortConnector*> RTC::InPortBase::ConnectorList |
Definition at line 73 of file InPortBase.h.
|
protected |
Connection list.
Definition at line 853 of file InPortBase.h.
|
protected |
Available consumers.
Definition at line 845 of file InPortBase.h.
|
protected |
ConnectorDataListener listener.
Definition at line 870 of file InPortBase.h.
|
protected |
Connected Endian.
Definition at line 861 of file InPortBase.h.
|
protected |
Definition at line 829 of file InPortBase.h.
|
protected |
Available providers.
Definition at line 837 of file InPortBase.h.
|
protected |
Buffer mode.
true:single buffer mode. false:multi buffer mode.
Definition at line 813 of file InPortBase.h.
|
protected |
Buffer.
Definition at line 821 of file InPortBase.h.