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

[詳解]

OpenRTM_aist.PublisherFlush.PublisherFlush の継承関係図
OpenRTM_aist.PublisherBase.PublisherBase OpenRTM_aist.DataPortStatus.DataPortStatus

公開メンバ関数

def __init__ (self)
 
def __del__ (self)
 
def init (self, prop)
 
def setConsumer (self, consumer)
 
def setBuffer (self, buffer)
 
def setListener (self, info, listeners)
 
def write (self, data, sec, usec)
 
def isActive (self)
 
def activate (self)
 
def deactivate (self)
 
def onSend (self, data)
 
def onReceived (self, data)
 
def onReceiverFull (self, data)
 
def onReceiverTimeout (self, data)
 
def onReceiverError (self, data)
 
- 基底クラス OpenRTM_aist.PublisherBase.PublisherBase に属する継承公開メンバ関数
def init (self, prop)
 
def release (self)
 
- 基底クラス OpenRTM_aist.DataPortStatus.DataPortStatus に属する継承公開メンバ関数
def toString (status)
 

その他の継承メンバ

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

詳解

PublisherFlush クラス

Flush 型 Publisher クラス バッファ内に格納されている未送信データを送信する。 データ送出を待つコンシューマを、送出する側と同じスレッドで動作させる。

構築子と解体子

◆ __init__()

def OpenRTM_aist.PublisherFlush.PublisherFlush.__init__ (   self)

コンストラクタ

コンストラクタ

引数
self
consumerデータ送出を待つコンシューマ
property本Publisherの駆動制御情報を設定したPropertyオブジェクト

OpenRTM_aist.DataPortStatus.DataPortStatusを再実装しています。

◆ __del__()

def OpenRTM_aist.PublisherFlush.PublisherFlush.__del__ (   self)

デストラクタ

デストラクタ 当該Publisherを破棄する際に、PublisherFactoryにより呼び出される。

引数
self

メソッド詳解

◆ activate()

def OpenRTM_aist.PublisherFlush.PublisherFlush.activate (   self)

アクティブ化する

Publisher をアクティブ化する。この関数を呼び出すことにより、 Publisherが持つ、データを送信するスレッドが動作を開始する。初期 化が行われていないなどにより、事前条件を満たさない場合、エラーコー ド PRECONDITION_NOT_MET を返す。

戻り値
PORT_OK 正常終了 PRECONDITION_NOT_MET 事前条件を満たさない

PublisherBase::ReturnCode PublisherFlush::activate()

OpenRTM_aist.PublisherBase.PublisherBaseを再実装しています。

◆ deactivate()

def OpenRTM_aist.PublisherFlush.PublisherFlush.deactivate (   self)

非アクティブ化する

Publisher を非アクティブ化する。この関数を呼び出すことにより、 Publisherが持つ、データを送信するスレッドが動作を停止する。初期 化が行われていないなどにより、事前条件を満たさない場合、エラーコー ド PRECONDITION_NOT_MET を返す。

戻り値
PORT_OK 正常終了 PRECONDITION_NOT_MET 事前条件を満たさない

PublisherBase::ReturnCode PublisherFlush::deactivate()

OpenRTM_aist.PublisherBase.PublisherBaseを再実装しています。

◆ init()

def OpenRTM_aist.PublisherFlush.PublisherFlush.init (   self,
  prop 
)

初期化

このクラスのオブジェクトを使用するのに先立ち、必ずこの関数を呼び 出す必要がある。ただし、この PublisherFlush は現状で初期化するパ ラメータを持たない。

引数
property本Publisherの駆動制御情報を設定したPropertyオブジェクト
戻り値
ReturnCode PORT_OK 正常終了 INVALID_ARGS Properties が不正な値を含む

virtual ReturnCode init(coil::Properties& prop);

OpenRTM_aist.PublisherBase.PublisherBaseを再実装しています。

◆ isActive()

def OpenRTM_aist.PublisherFlush.PublisherFlush.isActive (   self)

アクティブ化確認

Publisher はデータポートと同期して activate/deactivate される。 activate() / deactivate() 関数によって、アクティブ状態と非アクティ ブ状態が切り替わる。この関数により、現在アクティブ状態か、非アク ティブ状態かを確認することができる。

戻り値
状態確認結果(アクティブ状態:true、非アクティブ状態:false)

bool PublisherFlush::isActive()

OpenRTM_aist.PublisherBase.PublisherBaseを再実装しています。

◆ onReceived()

def OpenRTM_aist.PublisherFlush.PublisherFlush.onReceived (   self,
  data 
)

ON_RECEIVEDのリスナへ通知する。

引数
datacdrMemoryStream

inline void onReceived(const cdrMemoryStream& data)

◆ onReceiverError()

def OpenRTM_aist.PublisherFlush.PublisherFlush.onReceiverError (   self,
  data 
)

ON_RECEIVER_ERRORのリスナへ通知する。

引数
datacdrMemoryStream

inline void onReceiverError(const cdrMemoryStream& data)

◆ onReceiverFull()

def OpenRTM_aist.PublisherFlush.PublisherFlush.onReceiverFull (   self,
  data 
)

ON_RECEIVER_FULLのリスナへ通知する。

引数
datacdrMemoryStream

inline void onReceiverFull(const cdrMemoryStream& data)

◆ onReceiverTimeout()

def OpenRTM_aist.PublisherFlush.PublisherFlush.onReceiverTimeout (   self,
  data 
)

ON_RECEIVER_TIMEOUTのリスナへ通知する。

引数
datacdrMemoryStream

inline void onReceiverTimeout(const cdrMemoryStream& data)

◆ onSend()

def OpenRTM_aist.PublisherFlush.PublisherFlush.onSend (   self,
  data 
)

ON_SENDのリスナへ通知する。

引数
datacdrMemoryStream

inline void onSend(const cdrMemoryStream& data)

◆ setBuffer()

def OpenRTM_aist.PublisherFlush.PublisherFlush.setBuffer (   self,
  buffer 
)

バッファのセット

PublisherFlushでは、バッファを使用しないため、いかなる場合も PORT_OK を返す。

引数
bufferCDRバッファ
戻り値
PORT_OK 正常終了

PublisherBase::ReturnCode PublisherFlush::setBuffer(CdrBufferBase* buffer)

OpenRTM_aist.PublisherBase.PublisherBaseを再実装しています。

◆ setConsumer()

def OpenRTM_aist.PublisherFlush.PublisherFlush.setConsumer (   self,
  consumer 
)

InPortコンシューマのセット

この関数では、この Publisher に関連付けられるコンシューマをセットする。 コンシューマオブジェクトがヌルポインタの場合、INVALID_ARGSが返される。 それ以外の場合は、PORT_OK が返される。

引数
consumerConsumer へのポインタ
戻り値
ReturnCode PORT_OK 正常終了 INVALID_ARGS 引数に不正な値が含まれている

OpenRTM_aist.PublisherBase.PublisherBaseを再実装しています。

◆ setListener()

def OpenRTM_aist.PublisherFlush.PublisherFlush.setListener (   self,
  info,
  listeners 
)

リスナを設定する。

Publisher に対してリスナオブジェクト ConnectorListeners を設定する。 各種リスナオブジェクトを含む ConnectorListeners をセットすることで、 バッファの読み書き、データの送信時等にこれらのリスナをコールする。 ConnectorListeners オブジェクトの所有権はポートまたは RTObject が持ち Publisher 削除時に ConnectorListeners は削除されることはない。 ConnectorListeners がヌルポインタの場合 INVALID_ARGS を返す。

引数
infoConnectorProfile をローカル化したオブジェクト ConnectorInfo
listenersリスナを多数保持する ConnectorListeners オブジェクト
戻り値
PORT_OK 正常終了 INVALID_ARGS 不正な引数

virtual ::RTC::DataPortStatus::Enum setListener(ConnectorInfo& info, RTC::ConnectorListeners* listeners);

OpenRTM_aist.PublisherBase.PublisherBaseを再実装しています。

◆ write()

def OpenRTM_aist.PublisherFlush.PublisherFlush.write (   self,
  data,
  sec,
  usec 
)

データを書き込む

Publisher が保持するコンシューマに対してデータを書き込む。コン シューマ、リスナ等が適切に設定されていない等、Publisher オブジェ クトが正しく初期化されていない場合、この関数を呼び出すとエラーコー ド PRECONDITION_NOT_MET が返され、コンシューマへの書き込み等の操 作は一切行われない。

コンシューマへの書き込みに対して、コンシューマがフル状態、コン シューマのエラー、コンシューマへの書き込みがタイムアウトした場合 にはそれぞれ、エラーコード SEND_FULL, SEND_ERROR, SEND_TIMEOUT が返される。

これら以外のエラーの場合、PORT_ERROR が返される。

引数
data書き込むデータ
secタイムアウト時間
nsecタイムアウト時間
戻り値
PORT_OK 正常終了 PRECONDITION_NO_MET consumer, buffer, listener等が適切に設定 されていない等、このオブジェクトの事前条件 を満たさない場合。 SEND_FULL 送信先がフル状態 SEND_TIMEOUT 送信先がタイムアウトした CONNECTION_LOST 接続が切断されたことを検知した。

PublisherBase::ReturnCode PublisherFlush::write(const cdrMemoryStream& data, unsigned long sec, unsigned long usec)

OpenRTM_aist.PublisherBase.PublisherBaseを再実装しています。


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