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

[詳解]

クラス

class  find_conf
 

公開メンバ関数

 __init__ (self, configsets)
 
 __del__ (self)
 
 bindParameter (self, param_name, var, def_val, trans=None)
 
 unbindParameter (self, param_name)
 
 update (self, config_set=None, config_param=None)
 void update(void);
 
 isExist (self, param_name)
 
 isChanged (self)
 
 changedParameters (self)
 
 getActiveId (self)
 
 haveConfig (self, config_id)
 
 isActive (self)
 
 getConfigurationSets (self)
 
 getConfigurationSet (self, config_id)
 
 setConfigurationSetValues (self, config_set)
 
 getActiveConfigurationSet (self)
 
 addConfigurationSet (self, configset)
 
 removeConfigurationSet (self, config_id)
 
 activateConfigurationSet (self, config_id)
 
 setOnUpdate (self, cb)
 
 setOnUpdateParam (self, cb)
 
 setOnSetConfigurationSet (self, cb)
 
 setOnAddConfigurationSet (self, cb)
 
 setOnRemoveConfigurationSet (self, cb)
 
 setOnActivateSet (self, cb)
 
 addConfigurationParamListener (self, type, listener)
 
 removeConfigurationParamListener (self, type, listener)
 
 addConfigurationSetListener (self, type, listener)
 
 removeConfigurationSetListener (self, type, listener)
 
 addConfigurationSetNameListener (self, type, listener)
 
 removeConfigurationSetNameListener (self, type, listener)
 
 onUpdate (self, config_set)
 
 onUpdateParam (self, config_param, config_value)
 
 onSetConfigurationSet (self, config_set)
 
 onAddConfigurationSet (self, config_set)
 
 onRemoveConfigurationSet (self, config_id)
 
 onActivateSet (self, config_id)
 

詳解

ConfigAdmin クラス

各種コンフィギュレーション情報を管理するクラス。 用語を以下のように定義する。

  • コンフィギュレーション: コンポーネントの設定情報。
  • (コンフィギュレーション)パラメータ: key-value からなる設定情報。 coil.Properties 変数として扱われ、key、value 共に文字列として保 持される。key をコンフィギュレーションパラメータ名、value をコン フィギュレーションパラメータ値と呼ぶ。
  • コンフィギュレーションセット: コンフィギュレーションパラメータ のリストで、名前 (ID) によって区別される。IDをコンフィギュレーショ ンセットIDと呼ぶ。
  • (コンフィギュレーション)パラメータ変数:コンフィギュレーションパ ラメータをRTCのアクティビティ内で実際に利用する際に参照される変 数。パラメータごとに固有の型を持つ。
  • アクティブ(コンフィギュレーション)セット:現在有効なコンフィギュ レーションセットのことであり、唯一つ存在する。原則として、アクティ ブコンフィギュレーションセットのパラメータがコンフィギュレーショ ンパラメータ変数に反映される。

このクラスでは、コンフィギュレーションのための以下の2つの情報を保 持している。

  1. コンフィギュレーションセットのリスト
  2. パラメータ変数のリスト

基本的には、(1) のコンフィギュレーションセットのリストのうち一つを、 (2) のパラメータ変数へ反映させる、のが本クラスの目的である。通常、 パラメータ変数の変更操作は、コンフィギュレーションセットの変更とパ ラメータ変数への反映の2段階で行われる。

コンフィギュレーションセットのリストの操作には、以下の関数を用いる。

これらの関数により、コンフィギュレーションセットの変更、追加、削除、 取得、アクティブ化を行う。これらの操作により変更されたコンフィギュ レーションセットを、RTCのアクティビティから使用するパラメータ変数 に反映させるには、以下の update() 関数を用いる。

  • update(void)
  • update(const char* config_set)
  • update(const char* config_set, const char* config_param)

コンフィギュレーション操作をフックするためにコールバックファンクタ を与えることができる。フックできる操作は以下の通り。

から
0.4.0

構築子と解体子

◆ __init__()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.__init__ ( self,
configsets )

コンストラクタ

コンストラクタ

引数
self
configsets設定対象プロパティ名

ConfigAdmin(coil.Properties& prop);

◆ __del__()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.__del__ ( self)

デストラクタ

デストラクタ。 設定されているパラメータを削除する。

引数
self

メソッド詳解

◆ activateConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.activateConfigurationSet ( self,
config_id )

コンフィギュレーションセットのアクティブ化

指定したIDのコンフィギュレーションセットをアクティブ化する。 指定したIDのコンフィギュレーションセットが存在しない場合は、 falseを返す。

引数
self
config_id削除対象コンフィギュレーションセットのID
戻り値
アクティブ処理結果(成功:true、失敗:false)

bool activateConfigurationSet(const char* config_id);

◆ addConfigurationParamListener()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.addConfigurationParamListener ( self,
type,
listener )

ConfigurationParamListener を追加する

update(const char* config_set, const char* config_param) が呼ばれた際に コールされるリスナ ConfigurationParamListener を追加する。 type には現在のところ ON_UPDATE_CONFIG_PARAM のみが入る。

引数
typeConfigurationParamListenerType型の値。 ON_UPDATE_CONFIG_PARAM がある。
listenerConfigurationParamListener 型のリスナオブジェクト。

void addConfigurationParamListener(ConfigurationParamListenerType type, ConfigurationParamListener* listener);

◆ addConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.addConfigurationSet ( self,
configset )

コンフィギュレーションセットに設定値を追加

コンフィギュレーションセットに設定値を追加する。

引数
self
configset追加するプロパティ
戻り値
追加処理結果(追加成功:true、追加失敗:false)

bool addConfigurationSet(const coil.Properties& configuration_set);

◆ addConfigurationSetListener()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.addConfigurationSetListener ( self,
type,
listener )

ConfigurationSetListener を追加する

ConfigurationSet が更新されたときなどに呼ばれるリスナ ConfigurationSetListener を追加する。設定可能なイベントは以下の 2種類がある。

引数
typeConfigurationSetListenerType型の値。
listenerConfigurationSetListener 型のリスナオブジェクト。

void addConfigurationSetListener(ConfigurationSetListenerType type, ConfigurationSetListener* listener);

◆ addConfigurationSetNameListener()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.addConfigurationSetNameListener ( self,
type,
listener )

ConfigurationSetNameListener を追加する

ConfigurationSetName が更新されたときなどに呼ばれるリスナ ConfigurationSetNameListener を追加する。設定可能なイベントは以下の 3種類がある。

  • ON_UPDATE_CONFIG_SET: ある ConfigurationSet がアップデートされた
  • ON_REMOVE_CONFIG_SET: ある ConfigurationSet が削除された
  • ON_ACTIVATE_CONFIG_SET: ある ConfigurationSet がアクティブ化された
引数
typeConfigurationSetNameListenerType型の値。
listenerConfigurationSetNameListener 型のリスナオブジェクト。

void addConfigurationSetNameListener(ConfigurationSetNameListenerType type, ConfigurationSetNameListener* listener);

◆ bindParameter()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.bindParameter ( self,
param_name,
var,
def_val,
trans = None )

コンフィギュレーションパラメータの設定

コンフィギュレーションパラメータと変数をバインドする 指定した名称のコンフィギュレーションパラメータが既に存在する場合は falseを返す。

引数
self
param_nameコンフィギュレーションパラメータ名
varコンフィギュレーションパラメータ格納用変数
def_valコンフィギュレーションパラメータデフォルト値
transコンフィギュレーションパラメータ文字列変換用関数 (デフォルト値:None)
戻り値
設定結果(設定成功:true,設定失敗:false)

template <typename VarType> bool bindParameter(const char* param_name, VarType& var, const char* def_val, bool (trans)(VarType&, const char) = coil.stringTo)

◆ changedParameters()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.changedParameters ( self)

変更されたパラメータのリスト

コンフィギュレーションパラメータのうち変更されたもののリストを返す。

戻り値
変更されたパラメータ名リスト

coil.vstring& changedParameters() { return m_changedParam; }

◆ getActiveConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.getActiveConfigurationSet ( self)

アクティブ・コンフィギュレーションセットを取得

現在アクティブとなっているコンフィギュレーションセットを取得する。 アクティブとなっているコンフィギュレーションセットが存在しない場合は、 空のコンフィギュレーションセット を返す。

引数
self
戻り値
アクティブ・コンフィギュレーションセット

const coil.Properties& getActiveConfigurationSet(void);

◆ getActiveId()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.getActiveId ( self)

アクティブ・コンフィギュレーションセットIDの取得

現在アクティブなコンフィギュレーションセットのIDを取得する。

引数
self
戻り値
アクティブ・コンフィギュレーションセットID

const char* getActiveId(void);

◆ getConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.getConfigurationSet ( self,
config_id )

指定したIDのコンフィギュレーションセットの取得

IDで指定したコンフィギュレーションセットを取得する。 指定したコンフィギュレーションセットが存在しない場合は、 空のコンフィギュレーションセットを返す。

引数
self
config_id取得対象コンフィギュレーションセットのID
戻り値
コンフィギュレーションセット

const coil.Properties& getConfigurationSet(const char* config_id);

◆ getConfigurationSets()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.getConfigurationSets ( self)

全コンフィギュレーションセットの取得

設定されている全コンフィギュレーションセットを取得する。

引数
self
戻り値
全コンフィギュレーションセット

const std.vector<coil.Properties*>& getConfigurationSets(void);

◆ haveConfig()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.haveConfig ( self,
config_id )

コンフィギュレーションセットの存在確認

指定したコンフィギュレーションセットが存在するか確認する。

引数
self
config_id確認対象コンフィギュレーションセットID
戻り値
存在確認結果(指定したConfigSetあり:true、なし:false)

bool haveConfig(const char* config_id);

◆ isActive()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.isActive ( self)

コンフィギュレーションセットのアクティブ化確認

コンフィギュレーションセットがアクティブ化されているか確認する。

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

bool isActive(void);

◆ isChanged()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.isChanged ( self)

コンフィギュレーションパラメータの変更確認

コンフィギュレーションパラメータが変更されたか確認する。

引数
self
戻り値
変更確認結果(変更あり:true、変更なし:false)

bool isChanged(void) {return m_changed;}

◆ isExist()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.isExist ( self,
param_name )

コンフィギュレーションパラメータの存在確認

指定した名称を持つコンフィギュレーションパラメータが存在するか確認する。

引数
self
param_nameコンフィギュレーションパラメータ名称。
戻り値
存在確認結果(パラメータあり:true,パラメータなし:false)

bool isExist(const char* name);

◆ onActivateSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.onActivateSet ( self,
config_id )

セットがアクティブ化されたときにコールされる。

設定されてるコールバックオブジェクトを呼び出す。

引数
self
config_idプロパティ

void onActivateSet(const char* config_id);

◆ onAddConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.onAddConfigurationSet ( self,
config_set )

設定値が追加されたときにコールされる。

設定されてるコールバックオブジェクトを呼び出す。

引数
self
configuration_setプロパティ

void onAddConfigurationSet(const coil.Properties& config_set);

◆ onRemoveConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.onRemoveConfigurationSet ( self,
config_id )

セットが削除されてるときにコールされる。

設定されてるコールバックオブジェクトを呼び出す。

引数
self
config_idプロパティ

void onRemoveConfigurationSet(const char* config_id);

◆ onSetConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.onSetConfigurationSet ( self,
config_set )

コンフィギュレーションセットへの追加時にコールされる

設定されてるコールバックオブジェクトを呼び出す。

引数
self
configuration_setプロパティ

void onSetConfigurationSet(const coil.Properties& config_set);

◆ onUpdate()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.onUpdate ( self,
config_set )

コンフィギュレーションパラメータの更新(ID指定)時にコールされる

設定されてるコールバックオブジェクトを呼び出す。

引数
self
config_set設定対象のコンフィギュレーションセットID

void onUpdate(const char* config_set);

◆ onUpdateParam()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.onUpdateParam ( self,
config_param,
config_value )

コンフィギュレーションパラメータの更新(名称指定)時にコールされる

設定されてるコールバックオブジェクトを呼び出す。

引数
self
config_paramコンフィギュレーションパラメータ名
config_valueコンフィギュレーション値

void onUpdateParam(const char* config_param, const char* config_value);

◆ removeConfigurationParamListener()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.removeConfigurationParamListener ( self,
type,
listener )

ConfigurationParamListener を削除する

addConfigurationParamListener で追加されたリスナオブジェクトを削除する。

引数
typeConfigurationParamListenerType型の値。 ON_UPDATE_CONFIG_PARAM がある。
listener与えたリスナオブジェクトへのポインタ

void removeConfigurationParamListener(ConfigurationParamListenerType type, ConfigurationParamListener* listener);

◆ removeConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.removeConfigurationSet ( self,
config_id )

コンフィギュレーションセットの削除

指定したIDのコンフィギュレーションセットを削除する。

指定したIDのコンフィギュレーションセットが存在しない場合は、 falseを返す。削除可能なコンフィギュレーションセットは、 addConfigruationSet() によって追加したコンフィギュレーションセッ トのみであり、デフォルトコンフィギュレーションセット、コンポーネ ント起動時にファイルから読み込まれるコンフィギュレーションセット は削除することができない。

また、指定したコンフィギュレーションセットが現在アクティブである 場合には、いかなるコンフィギュレーションセットでも削除できない。

この関数により実際にコンフィギュレーションセットが削除された場合、 setOnRemoveConfigurationSet() でセットされたコールバック関数が呼 び出される。

引数
self
config_id削除対象コンフィギュレーションセットのID
戻り値
削除処理結果(削除成功:true、削除失敗:false)

bool removeConfigurationSet(const char* config_id);

◆ removeConfigurationSetListener()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.removeConfigurationSetListener ( self,
type,
listener )

ConfigurationSetListener を削除する

addConfigurationSetListener で追加されたリスナオブジェクトを削除する。

引数
typeConfigurationSetListenerType型の値。
listener与えたリスナオブジェクトへのポインタ

void removeConfigurationSetListener(ConfigurationSetListenerType type, ConfigurationSetListener* listener);

◆ removeConfigurationSetNameListener()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.removeConfigurationSetNameListener ( self,
type,
listener )

ConfigurationSetNameListener を削除する

addConfigurationSetNameListener で追加されたリスナオブジェクトを 削除する。

引数
typeConfigurationSetNameListenerType型の値。 ON_UPDATE_CONFIG_PARAM がある。
listener与えたリスナオブジェクトへのポインタ

void removeConfigurationSetNameListener(ConfigurationSetNameListenerType type, ConfigurationSetNameListener* listener);

◆ setConfigurationSetValues()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.setConfigurationSetValues ( self,
config_set )

指定したプロパティのコンフィギュレーションセットへの追加

指定したプロパティをコンフィギュレーションセットへ追加する。

引数
self
config_set追加するプロパティ
戻り値
追加処理実行結果(追加成功:true、追加失敗:false)

bool setConfigurationSetValues(const coil.Properties& config_set)

◆ setOnActivateSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.setOnActivateSet ( self,
cb )

OnActivateSet のコールバックの設定

OnActivateSet で呼ばれるコールバックのオブジェクトを設定する。

引数
self
cbOnActivateSetCallback型のオブジェクト

void setOnActivateSet(OnActivateSetCallback* cb);

◆ setOnAddConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.setOnAddConfigurationSet ( self,
cb )

OnAddConfigurationSet のコールバックの設定

OnAddConfigurationSet で呼ばれるコールバックのオブジェクトを設定する。

引数
self
cbOnAddConfigurationAddCallback型のオブジェクト

void setOnAddConfigurationSet(OnAddConfigurationAddCallback* cb);

◆ setOnRemoveConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.setOnRemoveConfigurationSet ( self,
cb )

OnRemoveConfigurationSet のコールバックの設定

OnRemoveConfiguration で呼ばれるコールバックのオブジェクトを設定する。

引数
self
cbOnRemoveConfigurationSetCallback型のオブジェクト

void setOnRemoveConfigurationSet(OnRemoveConfigurationSetCallback* cb);

◆ setOnSetConfigurationSet()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.setOnSetConfigurationSet ( self,
cb )

OnSetConfigurationSet のコールバックの設定

OnSetConfigurationSet で呼ばれるコールバックのオブジェクトを設定する。

引数
self
cbOnSetConfigurationSetCallback型のオブジェクト

void setOnSetConfigurationSet(OnSetConfigurationSetCallback* cb);

◆ setOnUpdate()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.setOnUpdate ( self,
cb )

OnUpdate のコールバックの設定

OnUpdate で呼ばれるコールバックのオブジェクトを設定する。

引数
self
cbOnUpdateCallback型のオブジェクト

void setOnUpdate(OnUpdateCallback* cb);

◆ setOnUpdateParam()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.setOnUpdateParam ( self,
cb )

OnUpdateParam のコールバックの設定

OnUpdateParam で呼ばれるコールバックのオブジェクトを設定する。

引数
self
cbOnUpdateParamCallback型のオブジェクト

void setOnUpdateParam(OnUpdateParamCallback* cb);

◆ unbindParameter()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.unbindParameter ( self,
param_name )

コンフィギュレーションパラメータの解除

コンフィギュレーションパラメータと変数のバインドを解除する。 指定した名称のコンフィギュレーションパラメータが存在しない場合は falseを返す。

引数
param_nameコンフィギュレーションパラメータ名
戻り値
設定結果(設定成功:true,設定失敗:false)

bool unbindParameter(const char* param_name);

◆ update()

OpenRTM_aist.ConfigAdmin.ConfigAdmin.update ( self,
config_set = None,
config_param = None )

void update(void);

コンフィギュレーションパラメータの更新 (アクティブコンフィギュレーションセット)

コンフィギュレーションセットが更新されている場合に、現在アクティ ブになっているコンフィギュレーションに設定した値で、コンフィギュ レーションパラメータの値を更新する。この処理での更新は、アクティ ブとなっているコンフィギュレーションセットが存在している場合、前 回の更新からコンフィギュレーションセットの内容が更新されている場 合のみ実行される。

void update(const char* config_set);

コンフィギュレーションパラメータの更新(ID指定)

コンフィギュレーション変数の値を、指定したIDを持つコンフィギュレー ションセットの値で更新する。これにより、アクティブなコンフィギュ レーションセットは変更されない。したがって、アクティブコンフィギュ レーションセットとパラメータ変数の間に矛盾が発生する可能性がある ので注意が必要である。

指定したIDのコンフィギュレーションセットが存在しない場合は、何も せずに終了する。

引数
config_set設定対象のコンフィギュレーションセットID

void update(const char* config_set, const char* config_param);

コンフィギュレーションパラメータの更新(名称指定)

特定のコンフィギュレーション変数の値を、指定したIDを持つコンフィ ギュレーションセットの値で更新する。これにより、アクティブなコン フィギュレーションセットは変更されない。したがって、アクティブコ ンフィギュレーションセットとパラメータ変数の間に矛盾が発生する可 能性があるので注意が必要である。

指定したIDのコンフィギュレーションセットや、指定した名称のパラメー タが存在しない場合は、何もせずに終了する。

引数
config_setコンフィギュレーションID
config_paramコンフィギュレーションパラメータ名

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