クラス OpenRTM_aist.OutPortPushConnector.OutPortPushConnector

OutPortPushConnector クラス. [詳細]

OpenRTM_aist.OutPortPushConnector.OutPortPushConnectorに対する継承グラフ
OpenRTM_aist.OutPortConnector.OutPortConnector OpenRTM_aist.ConnectorBase.ConnectorBase OpenRTM_aist.DataPortStatus.DataPortStatus

すべてのメンバ一覧

Public メソッド

def __init__
 コンストラクタ
def __del__
 デストラクタ
def write
 データの書き込み
def disconnect
 接続解除
def activate
 アクティブ化
def deactivate
 非アクティブ化
def getBuffer
 Buffer を取得する.
def createPublisher
 Publisherの生成.
def createBuffer
 Bufferの生成.
def onConnect
 接続確立時にコールバックを呼ぶvoid onConnect()
def onDisconnect
 接続切断時にコールバックを呼ぶvoid onDisconnect()

説明

OutPortPushConnector クラス.

OutPort の push 型データフローのための Connector クラス。このオブ ジェクトは、接続時に dataflow_type に push が指定された場合、 OutPort によって生成・所有され、InPortPushConnector と対になって、 データポートの push 型のデータフローを実現する。一つの接続に対して、 一つのデータストリームを提供する唯一の Connector が対応する。 Connector は 接続時に生成される UUID 形式の ID により区別される。

OutPortPushConnector は以下の三つのオブジェクトを所有し管理する。

OutPort に書き込まれたデータは OutPortPushConnector.write() に渡 され、Connector は Publisher にデータを書き込む。Publisher はその 特性に従ってデータを Buffer から取得し InPortConsumer に対して push することで InPort にデータが転送される。

から:
1.0.0

メソッド

def OpenRTM_aist.OutPortPushConnector.OutPortPushConnector.__del__ (   self  ) 

デストラクタ

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

OpenRTM_aist.OutPortConnector.OutPortConnectorを再定義しています。

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

コンストラクタ

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

引数:
info ConnectorInfo
consumer InPortConsumer
listeners ConnectorListeners 型のリスナオブジェクトリスト
buffer CdrBufferBase 型のバッファ

OutPortPushConnector(ConnectorInfo info, InPortConsumer* consumer, ConnectorListeners& listeners, CdrBufferBase* buffer = 0);

def OpenRTM_aist.OutPortPushConnector.OutPortPushConnector.activate (   self  ) 

アクティブ化

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

virtual void activate();

OpenRTM_aist.ConnectorBase.ConnectorBaseを再定義しています。

def OpenRTM_aist.OutPortPushConnector.OutPortPushConnector.createBuffer (   self,
  info 
)

Bufferの生成.

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

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

virtual CdrBufferBase* createBuffer(ConnectorInfo& info);

def OpenRTM_aist.OutPortPushConnector.OutPortPushConnector.createPublisher (   self,
  info 
)

Publisherの生成.

与えられた接続情報に基づきパブリッシャを生成する。

引数:
info 接続情報
戻り値:
パブリッシャへのポインタ

virtual PublisherBase* createPublisher(ConnectorInfo& info);

def OpenRTM_aist.OutPortPushConnector.OutPortPushConnector.deactivate (   self  ) 

非アクティブ化

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

virtual void deactivate();

OpenRTM_aist.ConnectorBase.ConnectorBaseを再定義しています。

def OpenRTM_aist.OutPortPushConnector.OutPortPushConnector.disconnect (   self  ) 

接続解除

consumer, publisher, buffer が解体・削除される。

virtual ReturnCode disconnect();

OpenRTM_aist.ConnectorBase.ConnectorBaseを再定義しています。

def OpenRTM_aist.OutPortPushConnector.OutPortPushConnector.getBuffer (   self  ) 

Buffer を取得する.

Connector が保持している Buffer を返す

virtual CdrBufferBase* getBuffer();

OpenRTM_aist.ConnectorBase.ConnectorBaseを再定義しています。

def OpenRTM_aist.OutPortPushConnector.OutPortPushConnector.write (   self,
  data 
)

データの書き込み

Publisherに対してデータを書き込み、これにより対応するInPortへデー タが転送される。正常終了した場合 PORT_OK が返される。それ以外の 場合、エラー値として、CONNECTION_LOST, BUFFER_FULL, BUFFER_ERROR, PORT_ERROR, BUFFER_TIMEOUT, PRECONDITION_NO_MET が 返される。

戻り値:
PORT_OK 正常終了 CONNECTION_LOST 接続がロストした BUFFER_FULL バッファが一杯である BUFFER_ERROR バッファエラー BUFFER_TIMEOUT バッファへの書き込みがタイムアウトした PRECONDITION_NOT_MET 事前条件を満たさない PORT_ERROR その他のエラー

template<class DataType> virtual ReturnCode write(const DataType& data);


このクラスの説明は次のファイルから生成されました:
OpenRTM-aist-1.1.0-Pythonに対してMon Mar 2 14:14:08 2015に生成されました。  doxygen 1.6.3