OpenRTM-aist-Python 2.0.0
クラス | 公開メンバ関数 | 全メンバ一覧
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
 

公開メンバ関数

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

その他の継承メンバ

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

詳解

CSPEventPort テンプレートクラス

から
2.0.0

構築子と解体子

◆ __init__()

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

コンストラクタ

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

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

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

◆ __del__()

def OpenRTM_aist.CSPEventPort.CSPEventPort.__del__ (   self)

デストラクタ

デストラクタ。

引数
self

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

メソッド詳解

◆ bindEvent0()

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

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

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

◆ bindEvent1()

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

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

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

◆ dataPullBufferMode()

def OpenRTM_aist.CSPEventPort.CSPEventPort.dataPullBufferMode (   self)

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

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

◆ dataPullBufferModeRetry()

def OpenRTM_aist.CSPEventPort.CSPEventPort.dataPullBufferModeRetry (   self)

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

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

◆ dataPullZeroMode()

def OpenRTM_aist.CSPEventPort.CSPEventPort.dataPullZeroMode (   self)

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

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

◆ dataPullZeroModeRetry()

def OpenRTM_aist.CSPEventPort.CSPEventPort.dataPullZeroModeRetry (   self)

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

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

◆ getDataBufferMode()

def 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()

def 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()

def OpenRTM_aist.CSPEventPort.CSPEventPort.getSyncMode (   self)

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

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

◆ init()

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

初期化関数

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

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

◆ name()

def OpenRTM_aist.CSPEventPort.CSPEventPort.name (   self)

ポート名称を取得する。

ポート名称を取得する。

引数
self
戻り値
ポート名称

◆ notify()

def OpenRTM_aist.CSPEventPort.CSPEventPort.notify (   self)

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

引数
self

◆ notify_connect()

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

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

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

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

◆ read()

def OpenRTM_aist.CSPEventPort.CSPEventPort.read (   self)

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

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

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

◆ readBufferMode()

def OpenRTM_aist.CSPEventPort.CSPEventPort.readBufferMode (   self)

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

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

◆ readData()

def OpenRTM_aist.CSPEventPort.CSPEventPort.readData (   self)

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

引数
self
戻り値
データ

◆ readZeroMode()

def OpenRTM_aist.CSPEventPort.CSPEventPort.readZeroMode (   self)

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

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

◆ releaseManager()

def OpenRTM_aist.CSPEventPort.CSPEventPort.releaseManager (   self)

CSPManagerの設定解除

引数
self

◆ reselect()

def OpenRTM_aist.CSPEventPort.CSPEventPort.reselect (   self)

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

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

◆ select()

def OpenRTM_aist.CSPEventPort.CSPEventPort.select (   self)

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

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

◆ setManager()

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

CSPManagerの設定

引数
self
managerCSPManager

◆ setSyncMode()

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

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

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

◆ setWritingConnector()

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

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

引数
self
conInPortConnector

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