|
OpenRTM-aist
1.1.2
|
#include <OutPort.h>
公開メンバ関数 | |
| OutPort (const char *name, DataType &value) | |
| コンストラクタ [詳解] | |
| virtual | ~OutPort (void) |
| デストラクタ [詳解] | |
| virtual bool | write (DataType &value) |
| データ書き込み [詳解] | |
| bool | write () |
| データ書き込み [詳解] | |
| bool | operator<< (DataType &value) |
| データ書き込み [詳解] | |
| DataPortStatus::Enum | getStatus (int index) |
| 特定のコネクタへの書き込みステータスを得る [詳解] | |
| DataPortStatusList | getStatusList () |
| 特定のコネクタへの書き込みステータスリストを得る [詳解] | |
| void | setOnWrite (OnWrite< DataType > *on_write) |
| OnWrite コールバックの設定 [詳解] | |
| void | setOnWriteConvert (OnWriteConvert< DataType > *on_wconvert) |
| OnWriteConvert コールバックの設定 [詳解] | |
基底クラス RTC::OutPortBase に属する継承公開メンバ関数 | |
| OutPortBase (const char *name, const char *data_type) | |
| コンストラクタ [詳解] | |
| virtual | ~OutPortBase (void) |
| デストラクタ [詳解] | |
| void | init (coil::Properties &prop) |
| プロパティの初期化 [詳解] | |
| coil::Properties & | properties () |
| プロパティを取得する [詳解] | |
| const std::vector< OutPortConnector * > & | connectors () |
| Connector を取得 [詳解] | |
| ConnectorInfoList | getConnectorProfiles () |
| ConnectorProfile を取得 [詳解] | |
| coil::vstring | getConnectorIds () |
| ConnectorId を取得 [詳解] | |
| coil::vstring | getConnectorNames () |
| Connectorの名前を取得 [詳解] | |
| OutPortConnector * | getConnectorById (const char *id) |
| ConnectorProfileをIDで取得 [詳解] | |
| OutPortConnector * | getConnectorByName (const char *name) |
| ConnectorProfileを名前で取得 [詳解] | |
| bool | getConnectorProfileById (const char *id, ConnectorInfo &prof) |
| ConnectorProfileをIDで取得 [詳解] | |
| bool | getConnectorProfileByName (const char *name, ConnectorInfo &prof) |
| ConnectorProfileを名前で取得 [詳解] | |
| virtual void | activateInterfaces () |
| 全ての Port のインターフェースを activate する [詳解] | |
| virtual void | deactivateInterfaces () |
| 全ての Port のインターフェースを deactivate する [詳解] | |
| void | addConnectorDataListener (ConnectorDataListenerType listener_type, ConnectorDataListener *listener, bool autoclean=true) |
| ConnectorDataListener リスナを追加する [詳解] | |
| void | removeConnectorDataListener (ConnectorDataListenerType listener_type, ConnectorDataListener *listener) |
| ConnectorDataListener リスナを削除する [詳解] | |
| void | addConnectorListener (ConnectorListenerType callback_type, ConnectorListener *listener, bool autoclean=true) |
| ConnectorListener リスナを追加する [詳解] | |
| void | removeConnectorListener (ConnectorListenerType callback_type, ConnectorListener *listener) |
| ConnectorDataListener リスナを削除する [詳解] | |
| bool | isLittleEndian () |
| endian 設定を返す [詳解] | |
| virtual ReturnCode_t | connect (ConnectorProfile &connector_profile) throw (CORBA::SystemException) |
| [CORBA interface] Port の接続を行う [詳解] | |
基底クラス RTC::PortBase に属する継承公開メンバ関数 | |
| PortBase (const char *name="") | |
| コンストラクタ [詳解] | |
| virtual | ~PortBase (void) |
| デストラクタ [詳解] | |
| virtual PortProfile * | get_port_profile () throw (CORBA::SystemException) |
| [CORBA interface] PortProfileを取得する [詳解] | |
| const PortProfile & | getPortProfile () const |
| PortProfile を取得する。 [詳解] | |
| virtual ConnectorProfileList * | get_connector_profiles () throw (CORBA::SystemException) |
| [CORBA interface] ConnectorProfileListを取得する [詳解] | |
| virtual ConnectorProfile * | get_connector_profile (const char *connector_id) throw (CORBA::SystemException) |
| [CORBA interface] ConnectorProfile を取得する [詳解] | |
| virtual ReturnCode_t | notify_connect (ConnectorProfile &connector_profile) throw (CORBA::SystemException) |
| [CORBA interface] Port の接続通知を行う [詳解] | |
| virtual ReturnCode_t | disconnect (const char *connector_id) throw (CORBA::SystemException) |
| [CORBA interface] Port の接続を解除する [詳解] | |
| virtual ReturnCode_t | notify_disconnect (const char *connector_id) throw (CORBA::SystemException) |
| [CORBA interface] Port の接続解除通知を行う [詳解] | |
| virtual ReturnCode_t | disconnect_all () throw (CORBA::SystemException) |
| [CORBA interface] Port の全接続を解除する [詳解] | |
| void | setName (const char *name) |
| Port の名前を設定する [詳解] | |
| const char * | getName () const |
| Port の名前を取得する [詳解] | |
| const PortProfile & | getProfile () const |
| PortProfileを取得する [詳解] | |
| void | setPortRef (PortService_ptr port_ref) |
| Port のオブジェクト参照を設定する [詳解] | |
| PortService_ptr | getPortRef () |
| Port のオブジェクト参照を取得する [詳解] | |
| void | setOwner (RTObject_ptr owner) |
| Port の owner の RTObject を指定する [詳解] | |
| void | setOnPublishInterfaces (ConnectionCallback *on_publish) |
| インターフェースを公開する際に呼ばれるコールバックをセットする [詳解] | |
| void | setOnSubscribeInterfaces (ConnectionCallback *on_subscribe) |
| インターフェースを取得する際に呼ばれるコールバックをセットする [詳解] | |
| void | setOnConnected (ConnectionCallback *on_connected) |
| 接続完了時に呼ばれるコールバックをセットする [詳解] | |
| void | setOnUnsubscribeInterfaces (ConnectionCallback *on_subscribe) |
| インターフェースを解放する際に呼ばれるコールバックをセットする [詳解] | |
| void | setOnDisconnected (ConnectionCallback *on_disconnected) |
| 接続解除に呼ばれるコールバックをセットする [詳解] | |
| void | setOnConnectionLost (ConnectionCallback *on_connection_lost) |
| ポートの接続がロストした場合に呼び出されるコールバックをセットする [詳解] | |
| void | setPortConnectListenerHolder (PortConnectListeners *portconnListeners) |
| PortConnectListeners のホルダをセットする [詳解] | |
その他の継承メンバ | |
基底クラス 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 } |
基底クラス RTC::DataPortStatus に属する継承静的公開メンバ関数 | |
| static const char * | toString (DataPortStatus::Enum status) |
| DataPortStatus リターンコードを文字列に変換 [詳解] | |
基底クラス RTC::OutPortBase に属する継承公開変数類 | |
| DATAPORTSTATUS_ENUM typedef std::vector< OutPortConnector * > | ConnectorList |
基底クラス RTC::PortBase に属する継承限定公開型 | |
| typedef coil::Guard< coil::Mutex > | Guard |
基底クラス RTC::OutPortBase に属する継承限定公開メンバ関数 | |
| void | configure () |
| OutPortの設定を行う [詳解] | |
| virtual ReturnCode_t | publishInterfaces (ConnectorProfile &connector_profile) |
| Interface 情報を公開する [詳解] | |
| virtual ReturnCode_t | subscribeInterfaces (const ConnectorProfile &connector_profile) |
| Interface に接続する [詳解] | |
| virtual void | unsubscribeInterfaces (const ConnectorProfile &connector_profile) |
| Interface の接続を解除する [詳解] | |
| void | initProviders () |
| OutPort provider の初期化 [詳解] | |
| void | initConsumers () |
| InPort consumer の初期化 [詳解] | |
| bool | checkEndian (const coil::Properties &prop, bool &littleEndian) |
| シリアライザのエンディアンをチェックする [詳解] | |
| OutPortProvider * | createProvider (ConnectorProfile &cprof, coil::Properties &prop) |
| OutPort provider の生成 [詳解] | |
| InPortConsumer * | createConsumer (const ConnectorProfile &cprof, coil::Properties &prop) |
| InPort consumer の生成 [詳解] | |
| OutPortConnector * | createConnector (const ConnectorProfile &cprof, coil::Properties &prop, InPortConsumer *consumer) |
| OutPortPushConnector の生成 [詳解] | |
| OutPortConnector * | createConnector (const ConnectorProfile &cprof, coil::Properties &prop, OutPortProvider *provider) |
| OutPortPullConnector の生成 [詳解] | |
基底クラス RTC::PortBase に属する継承限定公開メンバ関数 | |
| virtual ReturnCode_t | connectNext (ConnectorProfile &connector_profile) |
| 次の Port に対して notify_connect() をコールする [詳解] | |
| virtual ReturnCode_t | disconnectNext (ConnectorProfile &connector_profile) |
| 次の Port に対して notify_disconnect() をコールする [詳解] | |
| virtual void | setConnectionLimit (int limit_value) |
| 接続の最大数を設定する。 [詳解] | |
| virtual ReturnCode_t | _publishInterfaces (void) |
| Interface情報を公開する [詳解] | |
| bool | isEmptyId (const ConnectorProfile &connector_profile) const |
| ConnectorProfile の connector_id フィールドが空かどうか判定 [詳解] | |
| const std::string | getUUID () const |
| UUIDを生成する [詳解] | |
| void | setUUID (ConnectorProfile &connector_profile) const |
| UUIDを生成し ConnectorProfile にセットする [詳解] | |
| bool | isExistingConnId (const char *id) |
| id が既存の ConnectorProfile のものかどうか判定する [詳解] | |
| ConnectorProfile | findConnProfile (const char *id) |
| id を持つ ConnectorProfile を探す [詳解] | |
| CORBA::Long | findConnProfileIndex (const char *id) |
| id を持つ ConnectorProfile を探す [詳解] | |
| void | updateConnectorProfile (const ConnectorProfile &connector_profile) |
| ConnectorProfile の追加もしくは更新 [詳解] | |
| bool | eraseConnectorProfile (const char *id) |
| ConnectorProfile を削除する [詳解] | |
| bool | appendInterface (const char *name, const char *type_name, PortInterfacePolarity pol) |
| PortInterfaceProfile に インターフェースを登録する [詳解] | |
| bool | deleteInterface (const char *name, PortInterfacePolarity pol) |
| PortInterfaceProfile からインターフェース登録を削除する [詳解] | |
| template<class ValueType > | |
| void | addProperty (const char *key, ValueType value) |
| PortProfile の properties に NameValue 値を追加する [詳解] | |
| void | appendProperty (const char *key, const char *value) |
| PortProfile の properties に NameValue 値を要素に追加する [詳解] | |
| void | updateConnectors () |
| 存在しないポートをdisconnectする。 [詳解] | |
| bool | checkPorts (::RTC::PortServiceList &ports) |
| ポートの存在を確認する。 [詳解] | |
| void | onNotifyConnect (const char *portname, RTC::ConnectorProfile &profile) |
| void | onNotifyDisconnect (const char *portname, RTC::ConnectorProfile &profile) |
| void | onUnsubscribeInterfaces (const char *portname, RTC::ConnectorProfile &profile) |
| void | onPublishInterfaces (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
| void | onConnectNextport (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
| void | onSubscribeInterfaces (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
| void | onConnected (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
| void | onDisconnectNextport (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
| void | onDisconnected (const char *portname, RTC::ConnectorProfile &profile, ReturnCode_t ret) |
基底クラス RTC::OutPortBase に属する継承限定公開変数類 | |
| coil::Properties | m_properties |
| プロパティ [詳解] | |
| std::vector< OutPortConnector * > | m_connectors |
| 接続リスト [詳解] | |
| coil::vstring | m_providerTypes |
| 利用可能provider [詳解] | |
| coil::vstring | m_consumerTypes |
| 利用可能consumer [詳解] | |
| bool | m_littleEndian |
| 接続エンディアン [詳解] | |
| ConnectorListeners | m_listeners |
| ConnectorDataListener リスナ [詳解] | |
基底クラス RTC::PortBase に属する継承限定公開変数類 | |
| Logger | rtclog |
| ロガーストリーム [詳解] | |
| PortProfile | m_profile |
| Port の PortProfile. [詳解] | |
| RTC::PortService_var | m_objref |
| Port の オブジェクト参照 [詳解] | |
| coil::Mutex | m_profile_mutex |
| PortProfile の mutex. [詳解] | |
| coil::Mutex | m_connectorsMutex |
| std::string | m_ownerInstanceName |
| インスタンス名 [詳解] | |
| int | m_connectionLimit |
| Port の接続の最大数 [詳解] | |
| ConnectionCallback * | m_onPublishInterfaces |
| Callback functor オブジェクト [詳解] | |
| ConnectionCallback * | m_onSubscribeInterfaces |
| Callback functor オブジェクト [詳解] | |
| ConnectionCallback * | m_onConnected |
| Callback functor オブジェクト [詳解] | |
| ConnectionCallback * | m_onUnsubscribeInterfaces |
| Callback functor オブジェクト [詳解] | |
| ConnectionCallback * | m_onDisconnected |
| Callback functor オブジェクト [詳解] | |
| ConnectionCallback * | m_onConnectionLost |
| Callback functor オブジェクト [詳解] | |
| PortConnectListeners * | m_portconnListeners |
| PortConnectListenerホルダ [詳解] | |
OutPort テンプレートクラス
OutPort テンプレートクラス、テンプレートの引数として、OutPortが 扱うデータ型 DataType をとる。
OnWrite系コールバック (書込みに起因するイベントによりコールされる)
|
inline |
コンストラクタ
コンストラクタ
| name | ポート名 |
| value | このポートにバインドされるデータ変数 |
| length | バッファ長(デフォルト値:8) |
参照先 RTC::PortBase::addProperty(), NVUtil::find_index(), RTC::PortBase::m_profile.
|
inlinevirtual |
デストラクタ
デストラクタ
|
inline |
|
inline |
|
inline |
データ書き込み
ポートへデータを書き込む。 設定された値をポートに書き込む。
| value | 書き込み対象データ |
|
inline |
|
inline |
OnWriteConvert コールバックの設定
write() 呼び出し時に、各コネクタに対してデータを書き込み直前に呼 ばれ、データ変換を行う OnWriteConvert コールバックファンクタを設 定する。引数に直近で書き込まれたデータが与えられ、戻り値に実際に コネクタまたはバッファに書き込まれるデータを返すファンクタを設定 する。この関数により設定されたファンクタオブジェクトの所有権は、 呼び出し側が持つ。したがっ const て、このファンクタオブジェクト の解体責任は呼び出し側にある。ファンクタの設定を解除する場合には 引数に 0 を渡すことで、コールバックが無効となる。 データ書き込み 時に呼ばれる OnWriteConvert コールバックファンクタを設定する。こ のコールバック関数の処理結果が書き込まれる。このため書き込みデー タのフィルタリングが可能となる。
| on_wconvert | OnWriteConvert コールバックファンクタ |
|
inlinevirtual |
データ書き込み
ポートへデータを書き込む。
| value | 書き込み対象データ |
参照先 RTC::DataPortStatus::CONNECTION_LOST, RTC::PortBase::disconnect(), RTC::PortBase::findConnProfile(), CORBA_SeqUtil::for_each(), RTC::OutPortBase::m_connectors, RTC::PortBase::m_connectorsMutex, RTC::PortBase::m_onConnectionLost, RTC::PortBase::m_profile, RTC::DataPortStatus::PORT_OK, RTC_DEBUG, RTC_TRACE, RTC_WARN.
|
inlinevirtual |
データ書き込み
ポートへデータを書き込む。 バインドされた変数に設定された値をポートに書き込む。
RTC::OutPortBaseを実装しています。
1.8.11