|
OpenRTM-aist 2.1.0
|
#include <OutPortPushConnector.h>


公開メンバ関数 | |
| OutPortPushConnector (ConnectorInfo info, InPortConsumer *consumer, ConnectorListenersBase *listeners, CdrBufferBase *buffer=nullptr) | |
| コンストラクタ | |
| ~OutPortPushConnector () override | |
| デストラクタ | |
| DataPortStatus | write (RTC::ByteDataStreamBase *data) override |
| データの書き込み | |
| DataPortStatus | disconnect () override |
| 接続解除 | |
| void | activate () override |
| アクティブ化 | |
| void | deactivate () override |
| 非アクティブ化 | |
| CdrBufferBase * | getBuffer () override |
| Buffer を取得する | |
| void | unsubscribeInterface (const coil::Properties &prop) override |
| コンシューマのインターフェースの登録を取り消す | |
基底クラス RTC::OutPortConnector に属する継承公開メンバ関数 | |
| OutPortConnector (ConnectorInfo &info, ConnectorListenersBase *listeners) | |
| コンストラクタ | |
| ~OutPortConnector () override | |
| デストラクタ | |
| const ConnectorInfo & | profile () override |
| Profile 取得 | |
| const char * | id () override |
| Connector ID 取得 | |
| const char * | name () override |
| Connector 名取得 | |
| virtual void | setEndian (bool endian_type) |
| endianタイプ設定 | |
| virtual bool | isLittleEndian () |
| endian 設定を返す | |
| template<class DataType > | |
| DataPortStatus | write (DataType &data) |
| データ型の変換テンプレート | |
| virtual BufferStatus | read (ByteData &data) |
| bool | setInPort (InPortBase *directInPort) |
| virtual void | setPullDirectMode () |
| ダイレクト接続モードに設定 | |
| virtual bool | pullDirectMode () |
| ダイレクト接続モードかの判定 | |
基底クラス RTC::ConnectorBase に属する継承公開メンバ関数 | |
| virtual | ~ConnectorBase ()=default |
| デストラクタ | |
限定公開メンバ関数 | |
| virtual PublisherBase * | createPublisher (ConnectorInfo &info) |
| Publisherの生成 | |
| virtual CdrBufferBase * | createBuffer (ConnectorInfo &info) |
| Bufferの生成 | |
| void | onConnect () |
| 接続確立時にコールバックを呼ぶ | |
| void | onDisconnect () |
| 接続切断時にコールバックを呼ぶ | |
その他の継承メンバ | |
基底クラス RTC::OutPortConnector に属する継承限定公開変数類 | |
| Logger | rtclog |
| ロガーストリーム | |
| ConnectorInfo | m_profile |
| Port の PortProfile | |
| bool | m_littleEndian |
| 接続エンディアン | |
| PortBase * | m_directInPort |
| 同一プロセス上のピアInPortのポインタ | |
| ConnectorListenersBase * | m_listeners |
| ConnectorListenrs への参照 | |
| ConnectorListenersBase * | m_inPortListeners |
| InPort 側の ConnectorListenrs への参照 | |
| bool | m_directMode |
| ダイレクト接続のフラグ Trueでダイレクト接続モード | |
| std::string | m_marshaling_type |
| シリアライザの名前 | |
| ByteDataStreamBase * | m_cdr |
OutPort の push 型データフローのための Connector クラス。このオブ ジェクトは、接続時に dataflow_type に push が指定された場合、 OutPort によって生成・所有され、InPortPushConnector と対になって、 データポートの push 型のデータフローを実現する。一つの接続に対して、 一つのデータストリームを提供する唯一の Connector が対応する。 Connector は 接続時に生成される UUID 形式の ID により区別される。
OutPortPushConnector は以下の三つのオブジェクトを所有し管理する。
OutPort に書き込まれたデータは OutPortPushConnector::write() に渡 され、Connector は Publisher にデータを書き込む。Publisher はその 特性に従ってデータを Buffer から取得し InPortConsumer に対して push することで InPort にデータが転送される。
| RTC::OutPortPushConnector::OutPortPushConnector | ( | ConnectorInfo | info, |
| InPortConsumer * | consumer, | ||
| ConnectorListenersBase * | listeners, | ||
| CdrBufferBase * | buffer = nullptr |
||
| ) |
コンストラクタ
|
override |
デストラクタ
|
overridevirtual |
アクティブ化
RTC::ConnectorBaseを実装しています。
|
protectedvirtual |
Bufferの生成
|
protectedvirtual |
Publisherの生成
|
overridevirtual |
非アクティブ化
RTC::ConnectorBaseを実装しています。
|
overridevirtual |
接続解除
RTC::OutPortConnectorを実装しています。
|
overridevirtual |
Buffer を取得する
RTC::OutPortConnectorを実装しています。
|
protected |
接続確立時にコールバックを呼ぶ
|
protected |
接続切断時にコールバックを呼ぶ
|
overridevirtual |
コンシューマのインターフェースの登録を取り消す
RTC::OutPortConnectorを再実装しています。
|
overridevirtual |
データの書き込み
RTC::OutPortConnectorを実装しています。