OpenRTM-aist-Python 1.1.2
公開メンバ関数 | 全メンバ一覧
OpenRTM_aist.InPortPullConnector.InPortPullConnector クラス

InPortPullConnector クラス [詳解]

OpenRTM_aist.InPortPullConnector.InPortPullConnector の継承関係図
OpenRTM_aist.InPortConnector.InPortConnector OpenRTM_aist.ConnectorBase.ConnectorBase OpenRTM_aist.DataPortStatus.DataPortStatus

公開メンバ関数

def __init__ (self, info, consumer, listeners, buffer=0)
 コンストラクタ [詳解]
 
def __del__ (self)
 デストラクタ [詳解]
 
def read (self, data)
 read 関数 [詳解]
 
def disconnect (self)
 接続解除関数 [詳解]
 
def activate (self)
 アクティブ化 [詳解]
 
def deactivate (self)
 非アクティブ化 [詳解]
 
def createBuffer (self, profile)
 Bufferの生成 [詳解]
 
def onConnect (self)
 接続確立時にコールバックを呼ぶ void onConnect()
 
def onDisconnect (self)
 接続切断時にコールバックを呼ぶ void onDisconnect()
 
- 基底クラス OpenRTM_aist.InPortConnector.InPortConnector に属する継承公開メンバ関数
def __init__ (self, info, buffer)
 コンストラクタInPortConnector(ConnectorInfo& info, CdrBufferBase* buffer);
 
def __del__ (self)
 デストラクタ
 
def profile (self)
 ConnectorInfo 取得 [詳解]
 
def id (self)
 Connector ID 取得 [詳解]
 
def name (self)
 Connector 名取得 [詳解]
 
def disconnect (self)
 接続解除関数 [詳解]
 
def getBuffer (self)
 Buffer を所得する [詳解]
 
def read (self, data)
 read 関数 [詳解]
 
- 基底クラス OpenRTM_aist.ConnectorBase.ConnectorBase に属する継承公開メンバ関数
def __del__ (self)
 デストラクタ
 
def profile (self)
 Profile 取得 [詳解]
 
def id (self)
 Connector ID 取得 [詳解]
 
def name (self)
 Connector 名取得 [詳解]
 
def disconnect (self)
 接続解除関数 [詳解]
 
def getBuffer (self)
 Buffer を取得する [詳解]
 
def activate (self)
 アクティブ化 [詳解]
 
def deactivate (self)
 非アクティブ化 [詳解]
 
- 基底クラス OpenRTM_aist.DataPortStatus.DataPortStatus に属する継承公開メンバ関数
def toString (status)
 DataPortStatus リターンコードを文字列に変換 [詳解]
 

その他の継承メンバ

- 基底クラス OpenRTM_aist.DataPortStatus.DataPortStatus に属する継承静的公開変数類
int PORT_OK = 0
 brief DataPortStatus リターンコード [詳解]
 

詳解

InPortPullConnector クラス

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 のもつバッファにデータを書き込む。

から
1.0.0

構築子と解体子

def OpenRTM_aist.InPortPullConnector.InPortPullConnector.__init__ (   self,
  info,
  consumer,
  listeners,
  buffer = 0 
)

コンストラクタ

InPortPullConnector のコンストラクタはオブジェクト生成時に下記 を引数にとる。ConnectorInfo は接続情報を含み、この情報に従いバッ ファ等を生成する。OutPort インターフェースのプロバイダオブジェク トへのポインタを取り、所有権を持つので、InPortPullConnector は OutPortConsumer の解体責任を持つ。各種イベントに対するコールバッ ク機構を提供する ConnectorListeners を持ち、適切なタイミングでコー ルバックを呼び出す。データバッファがもし InPortBase から提供さ れる場合はそのポインタを取る。

引数
infoConnectorInfo
consumerOutPortConsumer
listenersConnectorListeners 型のリスナオブジェクトリスト
bufferCdrBufferBase 型のバッファ

InPortPullConnector(ConnectorInfo info, OutPortConsumer* consumer, ConnectorListeners& listeners, CdrBufferBase* buffer = 0);

def OpenRTM_aist.InPortPullConnector.InPortPullConnector.__del__ (   self)

デストラクタ

disconnect() が呼ばれ、consumer, publisher, buffer が解体・削除される。

メソッド詳解

def OpenRTM_aist.InPortPullConnector.InPortPullConnector.activate (   self)

アクティブ化

このコネクタをアクティブ化する

virtual void activate(){}; // do nothing

def OpenRTM_aist.InPortPullConnector.InPortPullConnector.createBuffer (   self,
  profile 
)

Bufferの生成

与えられた接続情報に基づきバッファを生成する。

引数
info接続情報
戻り値
バッファへのポインタ

CdrBufferBase* createBuffer(Profile& profile);

def OpenRTM_aist.InPortPullConnector.InPortPullConnector.deactivate (   self)

非アクティブ化

このコネクタを非アクティブ化する

virtual void deactivate(){}; // do nothing

def OpenRTM_aist.InPortPullConnector.InPortPullConnector.disconnect (   self)

接続解除関数

Connector が保持している接続を解除する

virtual ReturnCode disconnect();

def OpenRTM_aist.InPortPullConnector.InPortPullConnector.read (   self,
  data 
)

read 関数

OutPortConsumer からデータを取得する。正常に読み出せた場合、戻り 値は PORT_OK となり、data に読み出されたデータが格納される。それ 以外の場合には、エラー値として BUFFER_EMPTY, TIMEOUT, PRECONDITION_NOT_MET, PORT_ERROR が返される。

戻り値
PORT_OK 正常終了 BUFFER_EMPTY バッファは空である TIMEOUT タイムアウトした PRECONDITION_NOT_MET 事前条件を満たさない PORT_ERROR その他のエラー

virtual ReturnCode read(cdrMemoryStream& data);


このクラス詳解は次のファイルから抽出されました: