Classes | Public Member Functions | Protected Attributes | Private Types
SDOPackage::Organization_impl Class Reference

Organization implementation class. More...

#include <SdoOrganization.h>

Inheritance diagram for SDOPackage::Organization_impl:
Inheritance graph
[legend]

List of all members.

Classes

struct  nv_name
 Functor for NameValue. More...
struct  sdo_id
 Functor for SDO. More...

Public Member Functions

virtual CORBA::Boolean add_members (const SDOList &sdo_list) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Add the member SDOs
virtual CORBA::Boolean add_organization_property (const OrganizationProperty &org_property) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Set OrganizationProperty
virtual DependencyType get_dependency () throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] Get the DependencyType of the Organization
virtual SDOList * get_members () throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] Get the member list of the Organization
virtual char * get_organization_id () throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Get Organization ID
virtual OrganizationProperty * get_organization_property () throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] Get OrganizationProperty
virtual CORBA::Any * get_organization_property_value (const char *name) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Get specified value of OrganizationProperty
virtual SDOSystemElement_ptr get_owner () throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] Get the owner of Organization
Organization_ptr getObjRef ()
 Organization_impl (SDOSystemElement_ptr sdo)
 Constructor.
virtual CORBA::Boolean remove_member (const char *id) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Remove member SDO from Organization
virtual CORBA::Boolean remove_organization_property (const char *name) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Remove specified OrganizationProperty
virtual CORBA::Boolean set_dependency (DependencyType dependency) throw (CORBA::SystemException, NotAvailable, InternalError)
 [CORBA interface] Set the DependencyType of the Organization
virtual CORBA::Boolean set_members (const SDOList &sdos) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Set SDO
virtual CORBA::Boolean set_organization_property_value (const char *name, const CORBA::Any &value) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Set specified value of OrganizationProperty
virtual CORBA::Boolean set_owner (SDOSystemElement_ptr sdo) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError)
 [CORBA interface] Set the owner to the Organization
virtual ~Organization_impl (void)
 Virtual destructor.

Protected Attributes

SDOPackage::DependencyType m_dependency
 Dependency type.
SDOPackage::SDOList m_memberList
 A list of SDO members associated with the Organization.
Organization_var m_objref
Mutex m_org_mutex
SDOPackage::OrganizationProperty m_orgProperty
 Organization property.
std::string m_pId
 The identifier of the Organization.
SDOPackage::SDOSystemElement_var m_varOwner
 The owner of the Organization.
::RTC::Logger rtclog

Private Types

typedef coil::Guard< MutexGuard
typedef coil::Mutex Mutex

Detailed Description

Organization implementation class.

Organization interface is an interface to add and delete etc data defined by Resource Data Model.

Since:
0.4.0

Definition at line 74 of file SdoOrganization.h.


Member Typedef Documentation

Definition at line 79 of file SdoOrganization.h.

Definition at line 78 of file SdoOrganization.h.


Constructor & Destructor Documentation

SDOPackage::Organization_impl::Organization_impl ( SDOSystemElement_ptr  sdo)

Constructor.

Constructor

Definition at line 52 of file SdoOrganization.cpp.

Virtual destructor.

Virtual Virtual destructor

Definition at line 72 of file SdoOrganization.cpp.


Member Function Documentation

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

[CORBA interface] Add the member SDOs

[CORBA interface] Add the member of SDO

This operation adds a member that is an SDO to the organization. The member to be added is specified by argument "sdo."

Parameters:
sdo_listThe member to be added to the organization.
Returns:
If the operation was successfully completed.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InvalidParameterThe argument "sdo" is null.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Reimplemented in SDOPackage::PeriodicECOrganization.

Definition at line 338 of file SdoOrganization.cpp.

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

[CORBA interface] Set OrganizationProperty

Note: The PIM description of SDO Specification differs from the operation name. Note: Does this operation correspond to addOrganizationProperty? This operation adds the OrganizationProperty to an Organization. The OrganizationProperty is the property description of an Organization.

Parameters:
org_propertyThe type of organization to be added.
Returns:
If the operation was successfully completed.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
InvalidParameterThe argument "organizationProperty" is null.
NotAvailableThe target SDO is reachable but cannot respond.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 154 of file SdoOrganization.cpp.

DependencyType SDOPackage::Organization_impl::get_dependency ( ) throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] Get the DependencyType of the Organization

This operation gets the relationship "DependencyType" of the Organization.

Returns:
The relationship of the Organization as DependencyType. DependencyType is defined in Section 2.2.2, "Data Structures Used by Resource Data Model," on page 2-3 of OMG SDO Specification.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 406 of file SdoOrganization.cpp.

SDOList * SDOPackage::Organization_impl::get_members ( ) throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] Get the member list of the Organization

[CORBA interface] Get the member of the Organization

This operation returns a list of SDOs that are members of an Organization. An empty list is returned if the Organization does not have any members.

Returns:
Member SDOs that are contained in the Organization object.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 288 of file SdoOrganization.cpp.

char * SDOPackage::Organization_impl::get_organization_id ( ) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] Get Organization ID

[CORBA interface] Get Organization Id

This operation returns the 'ID' of the Organization.

Returns:
The id of the Organization defined in the resource data model.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 83 of file SdoOrganization.cpp.

OrganizationProperty * SDOPackage::Organization_impl::get_organization_property ( ) throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] Get OrganizationProperty

This operation returns the OrganizationProperty that an Organization has. An empty OrganizationProperty is returned if the Organization does not have any properties.

Returns:
The list with properties of the organization.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 98 of file SdoOrganization.cpp.

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

[CORBA interface] Get specified value of OrganizationProperty

This operation returns a value in the OrganizationProperty. The value to be returned is specified by argument "name."

Parameters:
nameThe name of the value to be returned.
Returns:
The value of property which is specified by argument "name".
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
InvalidParameterThere are no Property stored with argument "name".
NotAvailableThe target SDO is reachable but cannot respond.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 117 of file SdoOrganization.cpp.

SDOSystemElement_ptr SDOPackage::Organization_impl::get_owner ( ) throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] Get the owner of Organization

This operation returns the SDOSystemElement that is owner of the Organization.

Returns:
Reference of owner object.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 247 of file SdoOrganization.cpp.

Organization_ptr SDOPackage::Organization_impl::getObjRef ( void  ) [inline]

Definition at line 705 of file SdoOrganization.h.

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

[CORBA interface] Remove member SDO from Organization

This operation removes a member from the organization. The member to be removed is specified by argument "id."

Parameters:
idId of the SDO to be removed from the organization.
Returns:
If the operation was successfully completed.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InvalidParameterThe argument "id" is null or does not exist.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Reimplemented in SDOPackage::PeriodicECOrganization.

Definition at line 365 of file SdoOrganization.cpp.

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

[CORBA interface] Remove specified OrganizationProperty

This operation removes a property of Organization from NVList of the OrganizationProperty. The property to be removed is specified by argument "name."

Parameters:
nameThe name of the property to be removed.
Returns:
If the operation was successfully completed.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InvalidParameterThe property that is specified by argument "name" does not exist.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 215 of file SdoOrganization.cpp.

CORBA::Boolean SDOPackage::Organization_impl::set_dependency ( DependencyType  dependency) throw (CORBA::SystemException, NotAvailable, InternalError) [virtual]

[CORBA interface] Set the DependencyType of the Organization

This operation sets the relationship "DependencyType" of the Organization. The value to be set is specified by argument "dependency."

Parameters:
dependencyThe relationship of the Organization as DependencyType. DependencyType is defined in Section 2.2.2, "Data Structures Used by Resource Data Model," on page 2-3.
Returns:
If the operation was successfully completed.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InvalidParameterThe argument "dependency" is null.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 421 of file SdoOrganization.cpp.

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

[CORBA interface] Set SDO

This operation assigns a list of SDOs to an Organization as its members. If the Organization has already maintained a member SDO(s) when it is called, the operation replaces the member(s) with specified list of SDOs.

Parameters:
sdosMember SDOs to be assigned.
Returns:
If the operation was successfully completed.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InvalidParameterThe argument "SDOList" is null, or the object that is specified by the argument "sdos" does not exist.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Reimplemented in SDOPackage::PeriodicECOrganization.

Definition at line 312 of file SdoOrganization.cpp.

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] Set specified value of OrganizationProperty

This operation adds or updates a pair of name and value as a property of Organization to/in NVList of the OrganizationProperty. The name and the value to be added/updated are specified by argument "name" and "value."

Parameters:
nameThe name of the property to be added/updated.
valueThe value of the property to be added/updated.
Returns:
If the operation was successfully completed.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InvalidParameterThe property that is specified by argument "name" does not exist.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 180 of file SdoOrganization.cpp.

CORBA::Boolean SDOPackage::Organization_impl::set_owner ( SDOSystemElement_ptr  sdo) throw (CORBA::SystemException, InvalidParameter, NotAvailable, InternalError) [virtual]

[CORBA interface] Set the owner to the Organization

This operation sets an SDOSystemElement to the owner of the Organization. The SDOSystemElement to be set is specified by argument "sdo."

Parameters:
sdoReference of owner object.
Returns:
If the operation was successfully completed.
Exceptions:
SDONotExistsThe target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailableThe target SDO is reachable but cannot respond.
InvalidParameterThe argument "sdo" is null, or the object that is specified by "sdo" in argument "sdo" does not exist.
InternalErrorThe target SDO cannot execute the operation completely due to some internal error.

Definition at line 262 of file SdoOrganization.cpp.


Member Data Documentation

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

Dependency type.

This attribute specifies the dependency relation between the owner and members of the organization. Organization is used to form the following three patterns of topology.

  1. Hierarchical organization, which indicates owner supervises members. In this case, DependencyType should hold OWN value (see description of DependencyType on previous pages).
  2. Reversely hierarchical organization, which indicates members supervise owner. In this case, DependencyType should hold OWNED value (see description of DependencyType on previous pages).
  3. Flat organization, which indicates no dependency exists. In this case, DependencyType should hold NO_DEPENDENCY value (see description of DependencyType on previous pages).

Both an SDO and another subclass of SDOSystemElement can act as owner of an Organization. When an SDO is an owner, Organization can represent any of the above three topology patterns.

  • When an Organization represents topology pattern (1), an SDO (owner) controls one or more SDOs (members). For example, air conditioner (owner) controls a temperature sensor (member), humidity sensor (member), and wind flow controller (member).
  • When an Organization represents topology pattern (2), multiple SDOs(members) share an SDO (owner). For example, an amplifier (owner) is shared by several AV components (members) in an AV stereo.
  • When a subclass of SDOSystemElement, which is not an SDO is an owner examples of the topology are as follows. -- User (owner)-SDO (members): When a user (owner) supervises one or more SDOs (members), the organization represents topology pattern 1. -- Location (owner)-SDO (members): When one or more SDOs (members) are operating in a specific location (owner), the organization represents topology pattern 3. For example, multiple PDAs in the same place (e.g., a room) have equal relationships among them to communicate with each other.

Definition at line 811 of file SdoOrganization.h.

SDOPackage::SDOList SDOPackage::Organization_impl::m_memberList [protected]

A list of SDO members associated with the Organization.

Definition at line 726 of file SdoOrganization.h.

Organization_var SDOPackage::Organization_impl::m_objref [protected]

Definition at line 709 of file SdoOrganization.h.

Definition at line 832 of file SdoOrganization.h.

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

Organization property.

OrganizationProperty contains the properties of an Organization. An Organization has zero or one (at most one) instance of OrganizationProperty.

Definition at line 831 of file SdoOrganization.h.

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

The identifier of the Organization.

Definition at line 717 of file SdoOrganization.h.

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

The owner of the Organization.

Definition at line 735 of file SdoOrganization.h.

Reimplemented in SDOPackage::PeriodicECOrganization.

Definition at line 705 of file SdoOrganization.h.


The documentation for this class was generated from the following files:


openrtm_aist
Author(s): Noriaki Ando
autogenerated on Sat Jun 8 2019 18:49:16