OpenRTM-aist-Python 2.0.2
|
公開メンバ関数 | |
__init__ (self, info, consumer, listeners, buffer=None) | |
__del__ (self) | |
read (self, data=None) | |
disconnect (self) | |
activate (self) | |
deactivate (self) | |
createBuffer (self, profile) | |
onConnect (self) | |
onDisconnect (self) | |
setOutPort (self, directOutPort) | |
unsubscribeInterface (self, prop) | |
![]() | |
profile (self) | |
id (self) | |
name (self) | |
getBuffer (self) | |
setConsumer (self, consumer) | |
![]() | |
toString (status) | |
その他の継承メンバ | |
![]() | |
int | PORT_OK = 0 |
brief DataPortStatus リターンコード | |
InPort の pull 型データフローのための Connector クラス。このオブ ジェクトは、接続時に dataflow_type に pull が指定された場合、 InPort によって生成・所有され、OutPortPullConnector と対になって、 データポートの pull 型のデータフローを実現する。一つの接続に対して、 一つのデータストリームを提供する唯一の Connector が対応する。 Connector は 接続時に生成される UUID 形式の ID により区別される。
InPortPullConnector は以下の三つのオブジェクトを所有し管理する。
OutPort に書き込まれたデータは OutPortPullConnector.write() に渡 され Buffer に書き込まれる。InPort.read(), InPortPullConnector.read() は結果として、OutPortConsumer.get() を呼び出し、OutPortPullConnector の持つバッファからデータを読み出 し、InPortPullConnector のもつバッファにデータを書き込む。
OpenRTM_aist.InPortPullConnector.InPortPullConnector.__init__ | ( | self, | |
info, | |||
consumer, | |||
listeners, | |||
buffer = None ) |
コンストラクタ
InPortPullConnector のコンストラクタはオブジェクト生成時に下記 を引数にとる。ConnectorInfo は接続情報を含み、この情報に従いバッ ファ等を生成する。OutPort インターフェースのプロバイダオブジェク トへのポインタを取り、所有権を持つので、InPortPullConnector は OutPortConsumer の解体責任を持つ。各種イベントに対するコールバッ ク機構を提供する ConnectorListeners を持ち、適切なタイミングでコー ルバックを呼び出す。データバッファがもし InPortBase から提供さ れる場合はそのポインタを取る。
info | ConnectorInfo |
consumer | OutPortConsumer |
listeners | ConnectorListeners 型のリスナオブジェクトリスト |
buffer | CdrBufferBase 型のバッファ |
InPortPullConnector(ConnectorInfo info, OutPortConsumer* consumer, ConnectorListeners& listeners, CdrBufferBase* buffer = 0);
OpenRTM_aist.InPortPullConnector.InPortPullConnector.__del__ | ( | self | ) |
デストラクタ
disconnect() が呼ばれ、consumer, publisher, buffer が解体・削除される。
OpenRTM_aist.InPortPullConnector.InPortPullConnector.activate | ( | self | ) |
アクティブ化
このコネクタをアクティブ化する
virtual void activate(){}; // do nothing
OpenRTM_aist.ConnectorBase.ConnectorBaseを再実装しています。
OpenRTM_aist.InPortPullConnector.InPortPullConnector.createBuffer | ( | self, | |
profile ) |
Bufferの生成
与えられた接続情報に基づきバッファを生成する。
info | 接続情報 |
CdrBufferBase* createBuffer(Profile& profile);
OpenRTM_aist.InPortPullConnector.InPortPullConnector.deactivate | ( | self | ) |
非アクティブ化
このコネクタを非アクティブ化する
virtual void deactivate(){}; // do nothing
OpenRTM_aist.ConnectorBase.ConnectorBaseを再実装しています。
OpenRTM_aist.InPortPullConnector.InPortPullConnector.disconnect | ( | self | ) |
OpenRTM_aist.InPortPullConnector.InPortPullConnector.onConnect | ( | self | ) |
接続確立時にコールバックを呼ぶ void onConnect()
OpenRTM_aist.InPortPullConnector.InPortPullConnector.onDisconnect | ( | self | ) |
接続切断時にコールバックを呼ぶ void onDisconnect()
OpenRTM_aist.InPortPullConnector.InPortPullConnector.read | ( | self, | |
data = None ) |
read 関数
OutPortConsumer からデータを取得する。正常に読み出せた場合、戻り 値は PORT_OK となり、data に読み出されたデータが格納される。それ 以外の場合には、エラー値として BUFFER_EMPTY, TIMEOUT, PRECONDITION_NOT_MET, UNKNOWN_ERROR, PORT_ERROR が返される。
virtual ReturnCode read(cdrMemoryStream& data);
OpenRTM_aist.InPortPullConnector.InPortPullConnector.setOutPort | ( | self, | |
directOutPort ) |
データをダイレクトに書き込むためのOutPortのサーバントを設定する
self | |
directOutPort | OutPortのサーバント |
bool setOutPort(setOutPort* directOutPort);
OpenRTM_aist.InPortPullConnector.InPortPullConnector.unsubscribeInterface | ( | self, | |
prop ) |
コンシューマのインターフェースの登録を取り消す
prop | コネクタプロファイルのプロパティ |