クラス SDOPackage::Organization_impl

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

#include <SdoOrganization.h>

SDOPackage::Organization_implに対する継承グラフ
SDOPackage::PeriodicECOrganization

すべてのメンバ一覧

構成

struct  nv_name
 NameValue用functor. [詳細]
struct  sdo_id
 SDO用functor. [詳細]

Public メソッド

 Organization_impl (SDOSystemElement_ptr sdo)
virtual ~Organization_impl (void)
 仮想デストラクタ
virtual char * get_organization_id () throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Organization ID を取得する
virtual CORBA::Boolean add_organization_property (const OrganizationProperty &org_property) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] OrganizationProperty のセット
virtual OrganizationProperty * get_organization_property () throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] OrganizationProperty の取得
virtual CORBA::Any * get_organization_property_value (const char *name) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] OrganizationProperty の特定の値の取得
virtual CORBA::Boolean set_organization_property_value (const char *name, const CORBA::Any &value) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] OrganizationProperty の値のセット
virtual CORBA::Boolean remove_organization_property (const char *name) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] OrganizationProperty の削除
virtual CORBA::Boolean add_members (const SDOList &sdo_list) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] SDO メンバーの追加
virtual SDOList * get_members () throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] Organization のメンバーを取得する
virtual CORBA::Boolean set_members (const SDOList &sdos) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] SDO の セット
virtual CORBA::Boolean remove_member (const char *id) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] SDO メンバーの削除
virtual SDOSystemElement_ptr get_owner () throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] Organization のオーナーを取得する
virtual CORBA::Boolean set_owner (SDOSystemElement_ptr sdo) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Organization にオーナーをセットする
virtual DependencyType get_dependency () throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] Organization の DependencyType を取得
virtual CORBA::Boolean set_dependency (DependencyType dependency) throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] Organization の DependencyType をセットする
Organization_ptr getObjRef ()

Protected 変数

::RTC::Logger rtclog
Organization_var m_objref
std::string m_pId
 Organization の識別子.
SDOPackage::SDOList m_memberList
 Organization に関連付けられた SDO メンバのリスト.
SDOPackage::SDOSystemElement_var m_varOwner
 Organization の owner.
SDOPackage::DependencyType m_dependency
 依存関係のタイプ
SDOPackage::OrganizationProperty m_orgProperty
 Organization プロパティ.
Mutex m_org_mutex

説明

SDO Organization 実装クラス.

Organization interface は Resource Data Model で定義されたデータの 追加、削除等の操作を行うためのインターフェースである。

から:
0.4.0

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

SDOPackage::Organization_impl::Organization_impl ( SDOSystemElement_ptr  sdo  ) 

コンストラクタ

virtual SDOPackage::Organization_impl::~Organization_impl ( void   )  [virtual]

仮想デストラクタ

仮想デストラクタ。


関数

virtual CORBA::Boolean SDOPackage::Organization_impl::add_members ( const SDOList &  sdo_list  )  throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] SDO メンバーの追加

Organization にメンバーとして SDO を追加する。 引数 "sdo" に追加するメンバー SDO を指定する。

引数:
sdo_list Organization に追加される SDO のリスト。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
InvalidParameter 引数 "sdo" が nullである。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

SDOPackage::PeriodicECOrganizationで再定義されています。

virtual CORBA::Boolean SDOPackage::Organization_impl::add_organization_property ( const OrganizationProperty &  org_property  )  throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] OrganizationProperty のセット

SDO Specification の PIM 記述とオペレーション名が異なる。 ※ addOrganizationProperty に対応か?
OrganizationProperty を Organization に追加するオペレーション。 OrganizationProperty は Organization のプロパティ記述である。

引数:
org_property セットする OrganizationProperty
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
InvalidParameter "org_property" が null。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
virtual DependencyType SDOPackage::Organization_impl::get_dependency (  )  throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] Organization の DependencyType を取得

Organization の関係を表す "DependencyType" を返す。

戻り値:
Organization の依存関係 DependencyType を返す。 DependencyType は OMG SDO 仕様の Section 2.2.2 2-3 ページの "Data Structures Used by Resource Data Model" を参照。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
virtual SDOList* SDOPackage::Organization_impl::get_members (  )  throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] Organization のメンバーを取得する

Organization のメンバーの SDO のリストを返す。 メンバーが存在しなければ空のリストを返す。

戻り値:
Organization に含まれるメンバー SDO のリスト。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
virtual char* SDOPackage::Organization_impl::get_organization_id (  )  throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] Organization ID を取得する

Organization の ID を返すオペレーション。

戻り値:
Resource Data Model で定義された Organization ID。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
virtual OrganizationProperty* SDOPackage::Organization_impl::get_organization_property (  )  throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] OrganizationProperty の取得

Organization が所有する OrganizationProperty を返すオペレーション。 Organization がプロパティを持たなければ空のリストを返す。

戻り値:
Organization のプロパティのリスト。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
virtual CORBA::Any* SDOPackage::Organization_impl::get_organization_property_value ( const char *  name  )  throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] OrganizationProperty の特定の値の取得

OrganizationProperty の指定された値を返すオペレーション。 引数 "name" で指定されたプロパティの値を返す。

引数:
name 値を返すプロパティの名前。
戻り値:
引数 "name" で指定されたプロパティの値。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
InvalidParameter 引数 "name" で指定されたプロパティが 存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
virtual SDOSystemElement_ptr SDOPackage::Organization_impl::get_owner (  )  throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] Organization のオーナーを取得する

この Organization のオーナーへの参照を返す。

戻り値:
オーナーオブジェクトへの参照。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
Organization_ptr SDOPackage::Organization_impl::getObjRef ( void   )  [inline]
virtual CORBA::Boolean SDOPackage::Organization_impl::remove_member ( const char *  id  )  throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] SDO メンバーの削除

Organization から引数で指定された "id" の SDO を削除する。

引数:
id 削除する SDO の id。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
InvalidParameter 引数 "id" が null もしくは存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

SDOPackage::PeriodicECOrganizationで再定義されています。

virtual CORBA::Boolean SDOPackage::Organization_impl::remove_organization_property ( const char *  name  )  throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] OrganizationProperty の削除

OrganizationProperty の NVList から特定のプロパティを削除する。 削除されるプロパティの名前は引数 "name" により指定される。

引数:
name 削除するプロパティの名前。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
InvalidParameter 引数 "name" で指定されたプロパティは 存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
virtual CORBA::Boolean SDOPackage::Organization_impl::set_dependency ( DependencyType  dependency  )  throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] Organization の DependencyType をセットする

Organization の依存関係 "DependencyType" をセットする。 引数 "dependency" により依存関係を与える。

引数:
dependency Organization の依存関係を表す DependencyType。 DependencyType は OMG SDO 仕様の Section 2.2.2、2-3 ページの "Data Structures Used by Resource Data Model" を参照。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
InvalidParameter 引数 "sProfile" が nullである。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
virtual CORBA::Boolean SDOPackage::Organization_impl::set_members ( const SDOList &  sdos  )  throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] SDO の セット

SDO のリストを Organization のメンバーとしてセットする。 Organization がすでにメンバーの SDO を管理している場合は、 与えられた SDO のリストに置き換える。

引数:
sdos メンバーの SDO。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
InvalidParameter 引数 "SDOList" が nullである、もしくは 引数に指定された "SDOList" が存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

SDOPackage::PeriodicECOrganizationで再定義されています。

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

[CORBA interface] OrganizationProperty の値のセット

OrganizationProperty の NVList に name と value のセットを追加もしくは 更新するオペレーション。name と value は引数 "name" と "value" により 指定する。

引数:
name 追加・更新されるプロパティの名前。
value 追加・更新されるプロパティの値。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
InvalidParameter 引数 "name" で指定されたプロパティは 存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。
virtual CORBA::Boolean SDOPackage::Organization_impl::set_owner ( SDOSystemElement_ptr  sdo  )  throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] Organization にオーナーをセットする

Organization に対して SDOSystemElement をオーナーとしてセットする。 引数 "sdo" にセットする SDOSystemElement を指定する。

引数:
sdo オーナーオブジェクトの参照。
戻り値:
オペレーションが成功したかどうかを返す。
例外:
SDONotExists ターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
InvalidParameter 引数 "sdo" が nullである、もしくは、 "sdo" が存在しない。
NotAvailable SDOは存在するが応答がない。
InternalError 内部的エラーが発生した。

変数

SDOPackage::DependencyType SDOPackage::Organization_impl::m_dependency [protected]

依存関係のタイプ

Owner と member の依存関係を指定する属性。 Organization は以下のトポロジパターンを表現することができる。

  1. owner が member を管理する階層的構造。この場合 DependencyType は OWN という値を持つ。
  2. members が owner を管理する逆向きの階層的構造。この場合は DependencyType は OWNER という値を持つ。
  3. owner と member に依存関係がないフラットな構造。この場合は DependencyType は NO_DEPENDENCY という値を持つ。

SDO および SDOSystemElement のサブクラスは Organization の owner として 振舞うことが出来る。SDO が owner の場合にはOrganization は上記の いずれかのトポロジーパターンをとる。

  • Organization が 1. のトポロジーパターンを持つ場合、唯一つの owner SDO は member SDO を制御する。たとえば、エアコン(owner)は、 温度センサ(member)、湿度センサ(member)、風量制御器(member)を制御する。
  • Organization が 2. のトポロジを持つ場合は、複数の SDO member が唯一の SDO owner を共有する。たとえば、アンプ(owner)はいくつかのAV コンポーネント(member)から共有される。
  • SDO ではない SDOSystemElement のサブクラスが owner の場合、 以下のようなトポロジー例が考えられる。 -- User(owner)-SDO(member): ユーザ(owner) は一つ以上の SDO(member)を 管理する。これは上記トポロジパタン1.にあたる。 -- Location(owner)-SDO(members): 一つ以上の SDO(member) が特定の場所 = location(owner) で動作している場合、Organization のトポロジパターン は 3. の場合になる。たとえば、複数の PDA がある部屋にあり、互いに同等 な関係であり相互に通信可能な場合はこれにあたる。
SDOPackage::SDOList SDOPackage::Organization_impl::m_memberList [protected]

Organization に関連付けられた SDO メンバのリスト.

Organization_var SDOPackage::Organization_impl::m_objref [protected]
SDOPackage::OrganizationProperty SDOPackage::Organization_impl::m_orgProperty [protected]

Organization プロパティ.

OrganizationProperty は Organization のプロパティ情報を保持する。 一つの Organization は0個もしくは1個の OrganizationProperty をもつ。

std::string SDOPackage::Organization_impl::m_pId [protected]

Organization の識別子.

SDOPackage::SDOSystemElement_var SDOPackage::Organization_impl::m_varOwner [protected]

Organization の owner.

SDOPackage::PeriodicECOrganizationで再定義されています。

OpenRTM-aistに対してFri Oct 28 18:31:16 2016に生成されました。  doxygen 1.6.3