メインページ | ネームスペース一覧 | クラス階層 | 構成 | Directories | ファイル一覧 | ネームスペースメンバ | 構成メンバ | ファイルメンバ

クラス SDOPackage::Configuration_impl

SDO Configuration 実装クラス. [詳細]

#include <SdoConfiguration.h>

すべてのメンバ一覧

Public メソッド

 Configuration_impl (RTC::ConfigAdmin &configAdmin)
virtual ~Configuration_impl ()
virtual CORBA::Boolean set_device_profile (const DeviceProfile &dProfile) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] SDO の DeviceProfile をセットする
virtual CORBA::Boolean set_service_profile (const ServiceProfile &sProfile) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] SDO の ServiceProfile のセット
virtual CORBA::Boolean add_organization (Organization_ptr org) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Organization の追加
virtual CORBA::Boolean remove_service_profile (const char *id) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] ServiceProfile の削除
virtual CORBA::Boolean remove_organization (const char *organization_id) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Organization の参照の削除
virtual ParameterList * get_configuration_parameters () throw (NotAvailable, InternalError)
 [CORBA interface] 設定パラメータのリストの取得
virtual NVList * get_configuration_parameter_values () throw (NotAvailable, InternalError)
 [CORBA interface] Configuration parameter の値のリストの取得
virtual CORBA::Any * get_configuration_parameter_value (const char *name) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Configuration parameter の値の取得
virtual CORBA::Boolean set_configuration_parameter (const char *name, const CORBA::Any &value) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Configuration パラメータの変更
virtual ConfigurationSetList * get_configuration_sets () throw (NotAvailable, InternalError)
 [CORBA interface] ConfigurationSet リストの取得
virtual ConfigurationSet * get_configuration_set (const char *config_id) throw (NotAvailable, InternalError)
 [CORBA interface] ConfigurationSet の取得
virtual CORBA::Boolean set_configuration_set_values (const char *config_id, const ConfigurationSet &configuration_set) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] ConfigurationSet をセットする
virtual ConfigurationSet * get_active_configuration_set () throw (NotAvailable, InternalError)
 [CORBA interface] アクティブな ConfigurationSet を取得する
virtual CORBA::Boolean add_configuration_set (const ConfigurationSet &configuration_set) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] ConfigurationSet を追加する
virtual CORBA::Boolean remove_configuration_set (const char *config_id) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] ConfigurationSet を削除する
virtual CORBA::Boolean activate_configuration_set (const char *config_id) throw (InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] ConfigurationSet のアクティブ化
Configuration_ptr getObjRef ()
const DeviceProfile getDeviceProfile ()
const ServiceProfileList getServiceProfiles ()
const ServiceProfile getServiceProfile (const char *id)
const OrganizationList getOrganizations ()

Protected 型

typedef ACE_Guard< ACE_Thread_Mutex > Guard

Protected メソッド

const std::string getUUID () const

Protected 変数

Configuration_var m_objref
DeviceProfile m_deviceProfile
 Lock 付き SDO DeviceProfile.
ACE_Thread_Mutex m_dprofile_mutex
ServiceProfileList m_serviceProfiles
 SDO ServiceProfileList.
ACE_Thread_Mutex m_sprofile_mutex
ParameterList m_parameters
 SDO ParameterList.
ACE_Thread_Mutex m_params_mutex
RTC::ConfigAdmin & m_configsets
 SDO ConfigurationSetList.
ACE_Thread_Mutex m_config_mutex
OrganizationList m_organizations
 SDO OrganizationList.
ACE_Thread_Mutex m_org_mutex

構成

struct  config_id
struct  nv_name
 アクティブな ConfigurationSet [詳細]
struct  org_id
struct  service_id


説明

SDO Configuration 実装クラス.

Configuration interface は Resource Data Model で定義されたデータの 追加、削除等の操作を行うためのインターフェースである。 DeviceProfile, ServiceProfile, ConfigurationProfile および Organization の変更を行うためのオペレーションを備えている。SDO の仕様ではアクセス制御 およびセキュリティに関する詳細については規定していない。

複数の設定 (Configuration) を保持することにより、容易かつ素早くある設定 を反映させることができる。事前に定義された複数の設定を ConfigurationSets および configuration profile として保持することができる。ひとつの ConfigurationSet は特定の設定に関連付けられた全プロパティ値のリストを、 ユニークID、詳細とともに持っている。これにより、各設定項目の詳細を記述し 区別することができる。Configuration interface のオペレーションはこれら ConfiguratioinSets の管理を支援する。

以下、SDO仕様に明記されていないもしくは解釈がわからないため独自解釈

以下の関数は ParameterList に対して処理を行う。

以下の関数はアクティブなConfigurationSetに対する処理を行う

以下の関数はConfigurationSetListに対して処理を行う


型定義

typedef ACE_Guard<ACE_Thread_Mutex> SDOPackage::Configuration_impl::Guard [protected]
 


コンストラクタとデストラクタ

SDOPackage::Configuration_impl::Configuration_impl RTC::ConfigAdmin &  configAdmin  ) 
 

virtual SDOPackage::Configuration_impl::~Configuration_impl  )  [virtual]
 


関数

virtual CORBA::Boolean SDOPackage::Configuration_impl::activate_configuration_set const char *  config_id  )  throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] ConfigurationSet のアクティブ化

ConfigurationProfile に格納された ConfigurationSet のうち一つを アクティブにする。 このオペレーションは特定の ConfigurationSet をアクティブにする。 すなわち、SDO のコンフィギュレーション・プロパティがその格納されている ConfigurationSet により設定されるプロパティの値に変更される。 指定された ConfigurationSet の値がアクティブ・コンフィギュレーション にコピーされるということを意味する。

引数:
config_id アクティブ化する ConfigurationSet の id。
戻り値:
オペレーションが成功したかどうか。
例外:
SDONotExists ターゲットのSDOが存在しない。
InvalidParameter 引数 "config_id" が null である、もしくは 引数で指定された ConfigurationSet が存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual CORBA::Boolean SDOPackage::Configuration_impl::add_configuration_set const ConfigurationSet &  configuration_set  )  throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] ConfigurationSet を追加する

ConfigurationProfile に ConfigurationSet を追加するオペレーション。

引数:
configuration_set 追加される ConfigurationSet。
戻り値:
オペレーションが成功したかどうか。
例外:
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual CORBA::Boolean SDOPackage::Configuration_impl::add_organization Organization_ptr  org  )  throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] Organization の追加

このオペレーションは Organization object のリファレンスを追加する。

引数:
org 追加する Organization
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InvalidParameter 引数 "organization" が null である。
InternalError 内部的エラーが発生した。

virtual ConfigurationSet* SDOPackage::Configuration_impl::get_active_configuration_set  )  throw (NotAvailable, InternalError) [virtual]
 

[CORBA interface] アクティブな ConfigurationSet を取得する

このオペレーションは当該SDOの現在アクティブな ConfigurationSet を返す。 (もしSDOの現在の設定が予め定義された ConfigurationSet により設定されて いるならば。) ConfigurationSet は以下の場合にはアクティブではないものとみなされる。

  • 現在の設定が予め定義された ConfigurationSet によりセットされていない、
  • SDO の設定がアクティブになった後に変更された、
  • SDO を設定する ConfigurationSet が変更された、

これらの場合には、空の ConfigurationSet が返される。

戻り値:
現在アクティブな ConfigurationSet。
例外:
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual CORBA::Any* SDOPackage::Configuration_impl::get_configuration_parameter_value const char *  name  )  throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] Configuration parameter の値の取得

このオペレーションは引数 "name" で指定されたパラメータ値を返す。

引数:
name 値を要求するパラメータの名前。
戻り値:
指定されたパラメータの値。
例外:
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual NVList* SDOPackage::Configuration_impl::get_configuration_parameter_values  )  throw (NotAvailable, InternalError) [virtual]
 

[CORBA interface] Configuration parameter の値のリストの取得

このオペレーションは configuration パラメータおよび値を返す。

戻り値:
全ての configuration パラメータと値のリスト。
例外:
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual ParameterList* SDOPackage::Configuration_impl::get_configuration_parameters  )  throw (NotAvailable, InternalError) [virtual]
 

[CORBA interface] 設定パラメータのリストの取得

このオペレーションは configuration parameter のリストを返す。 SDO が設定可能なパラメータを持たなければ空のリストを返す。

戻り値:
設定を特徴付けるパラメータ定義のリスト。
例外:
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual ConfigurationSet* SDOPackage::Configuration_impl::get_configuration_set const char *  config_id  )  throw (NotAvailable, InternalError) [virtual]
 

[CORBA interface] ConfigurationSet の取得

このオペレーションは引数で指定された ConfigurationSet の ID に関連 付けられた ConfigurationSet を返す。

引数:
config_id ConfigurationSet の識別子。
戻り値:
引数により指定された ConfigurationSet。
例外:
SDONotExists ターゲットのSDOが存在しない。
InvalidParameter "config_id" が null か、指定された ConfigurationSet が存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual ConfigurationSetList* SDOPackage::Configuration_impl::get_configuration_sets  )  throw (NotAvailable, InternalError) [virtual]
 

[CORBA interface] ConfigurationSet リストの取得

このオペレーションは ConfigurationProfile が持つ ConfigurationSet の リストを返す。 SDO が ConfigurationSet を持たなければ空のリストを返す。

戻り値:
保持している ConfigurationSet のリストの現在値。
例外:
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

const DeviceProfile SDOPackage::Configuration_impl::getDeviceProfile  ) 
 

Configuration_ptr SDOPackage::Configuration_impl::getObjRef  ) 
 

const OrganizationList SDOPackage::Configuration_impl::getOrganizations  ) 
 

const ServiceProfile SDOPackage::Configuration_impl::getServiceProfile const char *  id  ) 
 

const ServiceProfileList SDOPackage::Configuration_impl::getServiceProfiles  ) 
 

const std::string SDOPackage::Configuration_impl::getUUID  )  const [protected]
 

virtual CORBA::Boolean SDOPackage::Configuration_impl::remove_configuration_set const char *  config_id  )  throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] ConfigurationSet を削除する

ConfigurationProfile から ConfigurationSet を削除する。

引数:
configu_id 削除する ConfigurationSet の id。
戻り値:
オペレーションが成功したかどうか。
例外:
SDONotExists ターゲットのSDOが存在しない。
InvalidParameter 引数 "configurationSetID" が null である、 もしくは、引数で指定された ConfigurationSet が存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual CORBA::Boolean SDOPackage::Configuration_impl::remove_organization const char *  organization_id  )  throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] Organization の参照の削除

このオペレーションは Organization の参照を削除する。

引数:
organization_id 削除する Organization の一意な id。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。
InvalidParameter 
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual CORBA::Boolean SDOPackage::Configuration_impl::remove_service_profile const char *  id  )  throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] ServiceProfile の削除

このオペレーションはこの Configuration interface を持つ SDO の Service の ServiceProfile を削除する。削除する ServiceProfile は引数により指定される。

引数:
id 削除する ServcieProfile の serviceID。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。
InvalidParameter 引数 "id" が null である。もしくは "id" に 関連付けられた ServiceProfile が存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual CORBA::Boolean SDOPackage::Configuration_impl::set_configuration_parameter const char *  name,
const CORBA::Any &  value
throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] Configuration パラメータの変更

このオペレーションは "name" で指定したパラメータの値を "value" に 変更する。

引数:
name 変更したいパラメータの名前。
value 変更したいパラメータの値。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual CORBA::Boolean SDOPackage::Configuration_impl::set_configuration_set_values const char *  config_id,
const ConfigurationSet &  configuration_set
throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] ConfigurationSet をセットする

このオペレーションは指定された id の ConfigurationSet を更新する。

引数:
configu_id 変更する ConfigurationSet の ID。
configuration_set 変更する ConfigurationSet そのもの。
戻り値:
ConfigurationSet が正常に更新できた場合は true。 そうでなければ false を返す。
例外:
InvalidParameter config_id が null か ConfigurationSet
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

virtual CORBA::Boolean SDOPackage::Configuration_impl::set_device_profile const DeviceProfile &  dProfile  )  throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] SDO の DeviceProfile をセットする

このオペレーションは SDO の DeviceProfile をセットする。SDO が DeviceProfile を保持している場合は新たな DeviceProfile を生成し、 DeviceProfile をすでに保持している場合は既存のものと置き換える。

引数:
dProfile SDO に関連付けられる DeviceProfile。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。
NotAvailable SDOは存在するが応答がない。
InvalidParameter 引数 "dProfile" が null である。
InternalError 内部的エラーが発生した。

virtual CORBA::Boolean SDOPackage::Configuration_impl::set_service_profile const ServiceProfile &  sProfile  )  throw (InvalidParameter, NotAvailable, InternalError) [virtual]
 

[CORBA interface] SDO の ServiceProfile のセット

このオペレーションはこの Configuration interface を所有する対象 SDO の ServiceProfile を設定する。もし引数の ServiceProfile の id が空であれば 新しい ID が生成されその ServiceProfile を格納する。もし id が空で なければ、SDO は同じ id を持つ ServiceProfile を検索する。 同じ id が存在しなければこの ServiceProfile を追加し、id が存在すれば 上書きをする。

引数:
sProfile 追加する ServiceProfile
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。
InvalidParameter 引数 "sProfile" が nullである。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。


変数

ACE_Thread_Mutex SDOPackage::Configuration_impl::m_config_mutex [protected]
 

RTC::ConfigAdmin& SDOPackage::Configuration_impl::m_configsets [protected]
 

SDO ConfigurationSetList.

DeviceProfile SDOPackage::Configuration_impl::m_deviceProfile [protected]
 

Lock 付き SDO DeviceProfile.

ACE_Thread_Mutex SDOPackage::Configuration_impl::m_dprofile_mutex [protected]
 

Configuration_var SDOPackage::Configuration_impl::m_objref [protected]
 

ACE_Thread_Mutex SDOPackage::Configuration_impl::m_org_mutex [protected]
 

OrganizationList SDOPackage::Configuration_impl::m_organizations [protected]
 

SDO OrganizationList.

ParameterList SDOPackage::Configuration_impl::m_parameters [protected]
 

SDO ParameterList.

ACE_Thread_Mutex SDOPackage::Configuration_impl::m_params_mutex [protected]
 

ServiceProfileList SDOPackage::Configuration_impl::m_serviceProfiles [protected]
 

SDO ServiceProfileList.

ACE_Thread_Mutex SDOPackage::Configuration_impl::m_sprofile_mutex [protected]
 


このクラスの説明は次のファイルから生成されました:
OpenRTMに対してFri Oct 5 05:15:05 2007に生成されました。  doxygen 1.4.1