OpenRTM-aist-Python 2.0.2
OpenRTM_aist.CSPEventPort.CSPEventPort クラス

[詳解]

OpenRTM_aist.CSPEventPort.CSPEventPort の継承関係図
OpenRTM_aist.InPortBase.InPortBase OpenRTM_aist.PortBase.PortBase OpenRTM_aist.DataPortStatus.DataPortStatus

クラス

class  IsWritableListener
 
class  IsWritableZeroModeListener
 
class  WorkerThreadCtrl
 
class  WriteListener
 
class  WriteZeroModeListener
 

公開メンバ関数

 __init__ (self, name, fsm=None, manager=None)
 
 __del__ (self)
 
 name (self)
 
 bindEvent0 (self, name, handler)
 
 bindEvent1 (self, name, handler, data_type)
 
 init (self, prop)
 
 setManager (self, manager)
 
 releaseManager (self)
 
 setWritingConnector (self, con)
 
 notify (self)
 
 notify_connect (self, connector_profile)
 
 getDataBufferMode (self, con, retry)
 
 dataPullBufferMode (self)
 
 dataPullBufferModeRetry (self)
 
 getDataZeroMode (self, con, retry)
 
 dataPullZeroMode (self)
 
 dataPullZeroModeRetry (self)
 
 select (self)
 
 reselect (self)
 
 setSyncMode (self, mode)
 
 getSyncMode (self)
 
 readData (self)
 
 read (self)
 
 readBufferMode (self)
 
 readZeroMode (self)
 
- 基底クラス OpenRTM_aist.InPortBase.InPortBase に属する継承公開メンバ関数
 properties (self)
 
 connectors (self)
 
 getConnectorProfiles (self)
 
 getConnectorIds (self)
 
 getConnectorNames (self)
 
 getConnectorById (self, id)
 
 getConnectorByName (self, name)
 
 getConnectorProfileById (self, id)
 
 getConnectorProfileByName (self, name)
 
 connect (self, connector_profile)
 
 activateInterfaces (self)
 
 deactivateInterfaces (self)
 
 addConnectorDataListener (self, listener_type, listener)
 
 removeConnectorDataListener (self, listener_type, listener)
 
 addConnectorListener (self, listener_type, listener)
 
 removeConnectorListener (self, listener_type, listener)
 
 publishInterfaces (self, cprof)
 
 subscribeInterfaces (self, cprof)
 
 unsubscribeInterfaces (self, connector_profile)
 
 initProviders (self)
 
 initConsumers (self)
 
 createProvider (self, cprof, prop)
 
 createConsumer (self, cprof, prop)
 
 createConnector (self, cprof, prop, provider_=None, consumer_=None)
 
 createDuplexConnector (self, cprof, prop, provider_)
 
 getLocalOutPort (self, profile)
 
- 基底クラス OpenRTM_aist.PortBase.PortBase に属する継承公開メンバ関数
 exit (self)
 
 get_port_profile (self)
 
 getPortProfile (self)
 
 get_connector_profiles (self)
 
 get_connector_profile (self, connector_id)
 
 disconnect (self, connector_id)
 
 notify_disconnect (self, connector_id)
 
 disconnect_all (self)
 
 setName (self, name)
 
 getName (self)
 
 getProfile (self)
 
 setPortRef (self, port_ref)
 
 getPortRef (self)
 
 setOwner (self, owner)
 
 setOnPublishInterfaces (self, on_publish)
 
 setOnSubscribeInterfaces (self, on_subscribe)
 
 setOnConnected (self, on_connected)
 
 setOnUnsubscribeInterfaces (self, on_subscribe)
 
 setOnDisconnected (self, on_disconnected)
 
 setPortConnectListenerHolder (self, portconnListeners)
 
 connectNext (self, connector_profile)
 
 disconnectNext (self, connector_profile)
 
 setConnectionLimit (self, limit_value)
 
 isEmptyId (self, connector_profile)
 
 getUUID (self)
 
 setUUID (self, connector_profile)
 
 isExistingConnId (self, id_)
 
 findConnProfile (self, id_)
 
 findConnProfileIndex (self, id_)
 
 updateConnectorProfile (self, connector_profile)
 
 eraseConnectorProfile (self, id_)
 
 appendInterface (self, instance_name, type_name, pol)
 
 deleteInterface (self, name, pol)
 
 addProperty (self, key, value)
 
 appendProperty (self, key, value)
 
 updateConnectors (self)
 
 checkPorts (self, ports)
 
 isExistingMarshalingType (self, con_prop)
 
- 基底クラス OpenRTM_aist.DataPortStatus.DataPortStatus に属する継承公開メンバ関数
 toString (status)
 

その他の継承メンバ

- 基底クラス OpenRTM_aist.DataPortStatus.DataPortStatus に属する継承静的公開変数類
int PORT_OK = 0
 brief DataPortStatus リターンコード
 
- 基底クラス OpenRTM_aist.PortBase.PortBase に属する継承限定公開メンバ関数
 _publishInterfaces (self)
 

詳解

CSPEventPort テンプレートクラス

から
2.0.0

構築子と解体子

◆ __init__()

OpenRTM_aist.CSPEventPort.CSPEventPort.__init__ ( self,
name,
fsm = None,
manager = None )

コンストラクタ

コンストラクタ。 パラメータとして与えられる T 型の変数にバインドされる。

引数
self
nameEventInPort 名。EventInPortBase:name() により参照される。
fsmFSM

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

◆ __del__()

OpenRTM_aist.CSPEventPort.CSPEventPort.__del__ ( self)

デストラクタ

デストラクタ。

引数
self

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

メソッド詳解

◆ bindEvent0()

OpenRTM_aist.CSPEventPort.CSPEventPort.bindEvent0 ( self,
name,
handler )

引数なしのイベントハンドラを登録する

引数
self
nameイベント名
handlerイベントハンドラ コネクタ接続時にfsm_event_nameという要素を設定する。 fsm_event_nameとイベント名が一致するとイベントが実行される。 イベントハンドラにはMacho等で定義したイベントを入力する

◆ bindEvent1()

OpenRTM_aist.CSPEventPort.CSPEventPort.bindEvent1 ( self,
name,
handler,
data_type )

引数ありのイベントハンドラを登録する

引数
self
nameイベント名
handlerイベントハンドラ
data_type入力データ

◆ dataPullBufferMode()

OpenRTM_aist.CSPEventPort.CSPEventPort.dataPullBufferMode ( self)

リングバッファ使用モード時のデータ読み込み処理 バッファがemptyではない場合はバッファから読み込む コネクタの中に読み込み可能なものがある場合は、そのコネクタから読み込む ただし、書き込み中の場合は書き込み終了までブロックする

引数
self
connector_profileコネクタプロファイル
戻り値
ret, prof ret:True:読み込み成功、False:バッファがemptyでかつ読み込み可能なコネクタが存在しない data:データ

◆ dataPullBufferModeRetry()

OpenRTM_aist.CSPEventPort.CSPEventPort.dataPullBufferModeRetry ( self)

リングバッファ使用モード時にデータの再受信を行う データの送受信時は片方がコネクタ選択時にスレッドをロックするロックモード、 もう片方がスレッドをロックしない非ロックモードに設定する必要がある。 非ロックモードの場合はデータ選択時にis_writable、is_readable関数が呼ばれた場合、 再検索するコネクタのリストに追加して後で再検索する。

引数
self
戻り値
ret, data ret:True:読み込み成功、False:バッファがemptyでかつ読み込み可能なコネクタが存在しない data:データ

◆ dataPullZeroMode()

OpenRTM_aist.CSPEventPort.CSPEventPort.dataPullZeroMode ( self)

非リングバッファ使用モード時のデータ読み込み処理 データ読み込み可能なコネクタが存在する場合は、そのコネクタからデータを読み込む

引数
self
connector_profileコネクタプロファイル
戻り値
ret, data ret:True:読み込み成功、False:データ読み込み可能なコネクタが存在しない data:データ(読み込み失敗の場合はNone)

◆ dataPullZeroModeRetry()

OpenRTM_aist.CSPEventPort.CSPEventPort.dataPullZeroModeRetry ( self)

非リングバッファ使用モード時にデータの再受信を行う

引数
self
戻り値
ret, data ret:True:読み込み成功、False:バッファがemptyでかつ読み込み可能なコネクタが存在しない data:データ

◆ getDataBufferMode()

OpenRTM_aist.CSPEventPort.CSPEventPort.getDataBufferMode ( self,
con,
retry )

リングバッファ使用モード時に指定コネクタの読み込み確認、データの読み込みを行う

引数
self
conコネクタ
retryTrue:再検索、False:通常の書き込み確認
戻り値
ret, data ret:SUCCESSFUL_GET_DATA:データ取得成功、FAILED_DESERIALIZE:復号失敗、FAILED_TIMEOUT:タイムアウトにより失敗、FAILED_EMPTY:空のデータを取得、FAILED_GET_DATA:データの読み込み可能なコネクタが存在しない prof:読み込んだデータ
ポート名称

◆ getDataZeroMode()

OpenRTM_aist.CSPEventPort.CSPEventPort.getDataZeroMode ( self,
con,
retry )

非リングバッファ使用モード時に指定コネクタの読み込み確認、データの読み込みを行う

引数
self
conコネクタ
retryTrue:再検索、False:通常の書き込み確認
戻り値
ret, data ret:SUCCESSFUL_GET_DATA:データ取得成功、FAILED_DESERIALIZE:復号失敗、FAILED_GET_DATA:データの読み込み可能なコネクタが存在しない prof:読み込んだデータ

◆ getSyncMode()

OpenRTM_aist.CSPEventPort.CSPEventPort.getSyncMode ( self)

ロックモード、非ロックモードの取得

引数
self
戻り値
True:ロックモード、False:非ロックモード

◆ init()

OpenRTM_aist.CSPEventPort.CSPEventPort.init ( self,
prop )

初期化関数

引数
self
propコネクタのプロパティ buffer(dataport.buffer)要素でバッファ長さ等を設定 channel_timeout(dataport.channel_timeout)要素で、 送信可能なアウトポートが存在しない場合のブロックのタイムアウトを設定
戻り値
ポート名称

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

◆ name()

OpenRTM_aist.CSPEventPort.CSPEventPort.name ( self)

ポート名称を取得する。

ポート名称を取得する。

引数
self
戻り値
ポート名称

◆ notify()

OpenRTM_aist.CSPEventPort.CSPEventPort.notify ( self)

接続先のOutPortに入力可能であることを通知 バッファがフルになる、もしくは待機中のOutPortがなくなるまで、接続先のコネクタのデータを読み込む バッファからデータを読み込んだ場合は、この関数を呼び出す必要がある

引数
self

◆ notify_connect()

OpenRTM_aist.CSPEventPort.CSPEventPort.notify_connect ( self,
connector_profile )

コネクタ接続関数 InPortBaseの接続処理のほかに、コネクタに書き込み確認時、書き込み時のコールバック関数を設定する

引数
self
connector_profileコネクタプロファイル
戻り値
ret, prof ret:リターンコード prof:コネクタプロファイル
ポート名称

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

◆ read()

OpenRTM_aist.CSPEventPort.CSPEventPort.read ( self)

データを読み込み可能なコネクタを選択しデータを取得する 読み込み可能なコネクタが存在しない場合は待機する

引数
self
戻り値
データ(タイムアウトした場合はNone)

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

◆ readBufferMode()

OpenRTM_aist.CSPEventPort.CSPEventPort.readBufferMode ( self)

リングバッファ使用モード時のデータ読み込み処理 読み込み可能なコネクタが存在しない場合は待機する

引数
self
戻り値
データ(タイムアウトした場合はNone)

◆ readData()

OpenRTM_aist.CSPEventPort.CSPEventPort.readData ( self)

select関数で格納したデータの取得

引数
self
戻り値
データ

◆ readZeroMode()

OpenRTM_aist.CSPEventPort.CSPEventPort.readZeroMode ( self)

非リングバッファ使用モード時のデータ読み込み処理 読み込み可能なコネクタが存在しない場合は待機する

引数
self
戻り値
データ(タイムアウトした場合はNone)

◆ releaseManager()

OpenRTM_aist.CSPEventPort.CSPEventPort.releaseManager ( self)

CSPManagerの設定解除

引数
self

◆ reselect()

OpenRTM_aist.CSPEventPort.CSPEventPort.reselect ( self)

再検索リストのコネクタからデータ読み込み可能なコネクタを選択し、 self._valueに読み込んだデータを格納する

引数
self
戻り値
True:読み込み成功、False:読み込み不可

◆ select()

OpenRTM_aist.CSPEventPort.CSPEventPort.select ( self)

データ読み込み可能なコネクタを選択し、 self._valueに読み込んだデータを格納する

引数
self
戻り値
True:読み込み成功、False:読み込み不可

◆ setManager()

OpenRTM_aist.CSPEventPort.CSPEventPort.setManager ( self,
manager )

CSPManagerの設定

引数
self
managerCSPManager

◆ setSyncMode()

OpenRTM_aist.CSPEventPort.CSPEventPort.setSyncMode ( self,
mode )

ロックモード、非ロックモードの設定 データの送受信時は片方がコネクタ選択時にスレッドをロックするロックモード、 もう片方がスレッドをロックしない非ロックモードに設定する必要がある。 非ロックモードの場合はデータ選択時にis_writable、is_readable関数が呼ばれた場合、 再検索するコネクタのリストに追加して後で再検索する。

引数
self
modeTrue:ロックモード、False:非ロックモード

◆ setWritingConnector()

OpenRTM_aist.CSPEventPort.CSPEventPort.setWritingConnector ( self,
con )

書き込み処理を開始したコネクタを登録

引数
self
conInPortConnector

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