RTC::RTObject_impl Class Reference

RT-Component class. More...

#include <RTObject.h>

Inheritance diagram for RTC::RTObject_impl:

RTC::DataFlowComponentBase

List of all members.

Public Member Functions

 RTObject_impl (Manager *manager)
 Constructor.
 RTObject_impl (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa)
 Constructor.
virtual ~RTObject_impl ()
 Virtual destructor.
virtual ReturnCode_t initialize () throw (CORBA::SystemException)
 [CORBA interface] IInitialize the RTC that realizes this interface.
virtual ReturnCode_t finalize () throw (CORBA::SystemException)
 [CORBA interface] Finalize the RTC for preparing it for destruction
virtual ReturnCode_t exit () throw (CORBA::SystemException)
 [CORBA interface]top the RTC's execution context(s) and finalize it along with its contents.
virtual CORBA::Boolean is_alive () throw (CORBA::SystemException)
 [CORBA interface] Confirm whether RTC is the alive state
virtual
ExecutionContextList * 
get_contexts () throw (CORBA::SystemException)
 [CORBA interface] Get ExecutionContextList.
virtual
ExecutionContext_ptr 
get_context (UniqueId ec_id) throw (CORBA::SystemException)
 [CORBA interface] Get ExecutionContext.
UniqueId attach_executioncontext (ExecutionContext_ptr exec_context) throw (CORBA::SystemException)
 [CORBA interface] Attach ExecutionContext
ReturnCode_t detach_executioncontext (UniqueId ec_id) throw (CORBA::SystemException)
 [CORBA interface] Detach ExecutionContext.
virtual
ComponentProfile * 
get_component_profile () throw (CORBA::SystemException)
 [RTObject CORBA interface] Get RTC's profile
virtual PortList * get_ports () throw (CORBA::SystemException)
 [RTObject CORBA interface] Get Ports
virtual
ExecutionContextServiceList * 
get_execution_context_services () throw (CORBA::SystemException)
 [RTObject CORBA interface] Get ExecutionContextAdmin
virtual ReturnCode_t on_initialize () throw (CORBA::SystemException)
 [ComponentAction CORBA interface] Initialize RTC
virtual ReturnCode_t on_finalize () throw (CORBA::SystemException)
 [ComponentAction CORBA interface] Finalize RTC
virtual ReturnCode_t on_startup (UniqueId ec_id) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] Startup RTC
virtual ReturnCode_t on_shutdown (UniqueId ec_id) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] Shutdown RTC
virtual ReturnCode_t on_activated (UniqueId ec_id) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] Activate RTC
virtual ReturnCode_t on_deactivated (UniqueId ec_id) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] Deactivate RTC
virtual ReturnCode_t on_aborting (UniqueId ec_id) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] Transition to Error State
virtual ReturnCode_t on_error (UniqueId ec_id) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] Error Processing of RTC
virtual ReturnCode_t on_reset (UniqueId ec_id) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] Resetting RTC
virtual ReturnCode_t on_execute (UniqueId ec_id) throw (CORBA::SystemException)
 [DataFlowComponentAction CORBA interface] Primary Periodic Operation of RTC
virtual ReturnCode_t on_state_update (UniqueId ec_id) throw (CORBA::SystemException)
 [DataFlowComponentAction CORBA interface] Secondary Periodic Operation of RTC
virtual ReturnCode_t on_rate_changed (UniqueId ec_id) throw (CORBA::SystemException)
 [DataFlowComponentAction CORBA interface] Notify rate changed
virtual
SDOPackage::OrganizationList * 
get_owned_organizations () throw (CORBA::SystemException, SDOPackage::NotAvailable)
 [SDO interface] Get Organization list
virtual char * get_sdo_id () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get the SDO ID
virtual char * get_sdo_type () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get SDO type
virtual
SDOPackage::DeviceProfile * 
get_device_profile () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get SDO DeviceProfile list
virtual
SDOPackage::ServiceProfileList * 
get_service_profiles () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get SDO ServiceProfile
virtual
SDOPackage::ServiceProfile * 
get_service_profile (const char *id) throw (CORBA::SystemException, SDOPackage::InvalidParameter, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get specified ServiceProfile
virtual
SDOPackage::SDOService_ptr 
get_sdo_service (const char *id) throw (CORBA::SystemException, SDOPackage::InvalidParameter, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get specified SDO Service's reference
virtual
SDOPackage::Configuration_ptr 
get_configuration () throw (CORBA::SystemException, SDOPackage::InterfaceNotImplemented, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get Configuration object
virtual
SDOPackage::Monitoring_ptr 
get_monitoring () throw (CORBA::SystemException, SDOPackage::InterfaceNotImplemented, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get Monitoring object
virtual
SDOPackage::OrganizationList * 
get_organizations () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get Organization list
virtual
SDOPackage::NVList * 
get_status_list () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get SDO Status list
virtual CORBA::Any * get_status (const char *name) throw (CORBA::SystemException, SDOPackage::InvalidParameter, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Get SDO Status
const char * getInstanceName ()
 [local interface] Get instance name
void setInstanceName (const char *instance_name)
 [local interface] Set instance name
const char * getTypeName ()
 [local interface] Get type name
const char * getDescription ()
 [local interface] GetDescription
const char * getVersion ()
 [local interface] Get version information
const char * getVendor ()
 [local interface] Get vendor
const char * getCategory ()
 [local interface] Get category information
std::vector
< std::string > 
getNamingNames ()
 [local interface] Get Naming Server information
void setObjRef (const RTObject_ptr rtobj)
 [local interface] Set the object reference
RTObject_ptr getObjRef () const
 [local interface] Get the object reference
void setProperties (const Properties &prop)
 [local interface] Set RTC property
PropertiesgetProperties ()
 [local interface] Get RTC property
template<typename VarType>
bool bindParameter (const char *param_name, VarType &var, const char *def_val, bool(*trans)(VarType &, const char *)=::stringTo)
 Setup for configuration parameters.
void updateParameters (const char *config_set)
 Update configuration parameters (by ID).
void registerPort (PortBase &port)
 [local interface] Register Port
template<class DataType, template< class DataType > class Buffer>
void registerInPort (const char *name, InPort< DataType, Buffer > &inport)
 [local interface] Register DataInPort
template<class DataType, template< class DataType > class Buffer>
void registerOutPort (const char *name, OutPort< DataType, Buffer > &outport)
 [local interface] Register DataOutPort
void deletePort (PortBase &port)
 [local interface] Unregister Port
void deletePortByName (const char *port_name)
 [local interface] Delete Port by specifying its name
void finalizePorts ()
 Unregister All Ports.

Protected Member Functions

virtual ReturnCode_t onInitialize ()
 Callback function to initialize.
virtual ReturnCode_t onFinalize ()
 Callback function to finalize.
virtual ReturnCode_t onStartup (RTC::UniqueId ec_id)
 Callback function for startup action.
virtual ReturnCode_t onShutdown (RTC::UniqueId ec_id)
 Callback function for shutdown action.
virtual ReturnCode_t onActivated (RTC::UniqueId ec_id)
 Callback function to activate.
virtual ReturnCode_t onDeactivated (RTC::UniqueId ec_id)
 Callback function to deactivate.
virtual ReturnCode_t onExecute (RTC::UniqueId ec_id)
 Callback function to execute periodically.
virtual ReturnCode_t onAborting (RTC::UniqueId ec_id)
 Callback function to abort.
virtual ReturnCode_t onError (RTC::UniqueId ec_id)
 Callback function for error handling.
virtual ReturnCode_t onReset (RTC::UniqueId ec_id)
 Callback function to reset.
virtual ReturnCode_t onStateUpdate (RTC::UniqueId ec_id)
 Callback function to update the state.
virtual ReturnCode_t onRateChanged (RTC::UniqueId ec_id)
 Callback function to change execution cycle.
void shutdown ()
 Shutdown RTC.

Protected Attributes

Managerm_pManager
 Manager object.
CORBA::ORB_var m_pORB
 The pointer to the ORB.
PortableServer::POA_var m_pPOA
 The pointer to the POA.
SDOPackage::OrganizationList m_sdoOwnedOrganizations
 SDO owned organization list.
SDOPackage::ServiceProfileList m_sdoSvcProfiles
 SDOService Profile List.
SDOPackage::Configuration_implm_pSdoConfigImpl
 The pointer to the SDO Configuration Object.
SDOPackage::Configuration_var m_pSdoConfig
 The pointer to the SDO Configuration Interface.
SDOPackage::OrganizationList m_sdoOrganizations
 SDO organization.
SDOPackage::NVList m_sdoStatus
 SDO Status.
ComponentProfile m_profile
 ComponentProfile.
RTObject_ptr m_objref
 Object reference.
PortAdmin m_portAdmin
 List of Port Object reference.
ExecutionContextServiceList m_execContexts
 List of ExecutionContextService.
bool m_created
 Created Status Flag.
bool m_alive
 Alive Status Flag.
Properties m_properties
 RTC's Property.
ConfigAdmin m_configsets
 Configuration Administrator Object.

Classes

struct  deactivate_comps
 Functor to deactivate RTC. More...
struct  ec_copy
 Functor to find ExecutionContext. More...
struct  nv_name
 Functor to find NVList. More...
struct  svc_name
 Functor to find from SDOService Profile List by id. More...


Detailed Description

RT-Component class.

This is a class to be a base of each RT-Component. This is a implementation class of lightweightRTComponent in Robotic Technology Component specification. This provides a implementation of ComponentAction interface that offers the the component's function and the implementation of LightweightRTObject for management of the component's lifecycle. When users actually create the components, they should use each subclass corresponding to Execution Semantics.
(In current implementation, since only Periodic Sampled Data Processing is supported, this class inherits dataFlowComponent directly.)

Since:
0.2.0

Constructor & Destructor Documentation

RTC::RTObject_impl::RTObject_impl ( Manager manager  ) 

Constructor.

Constructor

Parameters:
manager Manager object

RTC::RTObject_impl::RTObject_impl ( CORBA::ORB_ptr  orb,
PortableServer::POA_ptr  poa 
)

Constructor.

Constructor

Parameters:
orb ORB
poa POA

virtual RTC::RTObject_impl::~RTObject_impl (  )  [virtual]

Virtual destructor.


Member Function Documentation

virtual ReturnCode_t RTC::RTObject_impl::onInitialize (  )  [protected, virtual]

Callback function to initialize.

This is a callback function that is executed when ComponentAction::on_initialize was invoked.
As for actual initialization of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.

Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onFinalize (  )  [protected, virtual]

Callback function to finalize.

This is a callback function that is executed when ComponentAction::on_finalize was invoked.
As for actual finalization of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.

Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onStartup ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function for startup action.

Callback function that is executed when ComponentAction::on_startup was invoked.
As for actual startup of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onShutdown ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function for shutdown action.

Callback function that is executed when ComponentAction::on_shutdown was invoked.
As for actual shutdown of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onActivated ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function to activate.

This is a callback function that is executed when ComponentAction::on_activated was invoked.
As for actual activation of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onDeactivated ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function to deactivate.

This is a callback function that is executed when ComponentAction::on_deactivated was invoked.
As for actual deactivation of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onExecute ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function to execute periodically.

This is a callback function that is executed when DataFlowComponentAction::on_execute is invoked.
As for actual periodic execution of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it. This function is invoked periodically as the first execution pass of Two-Pass Execution in Periodic Sampled Data Processing.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onAborting ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function to abort.

This is a callback function that is executed when ComponentAction::on_aborting was invoked.
As for actual abortion of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onError ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function for error handling.

This is a callback function that is executed when ComponentAction::on_error was invoked.
As for actual error handling of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onReset ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function to reset.

This is a callback function that is executed when ComponentAction::on_reset was invoked.
As for actual reset of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onStateUpdate ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function to update the state.

This is a callback function that is executed when DataFlowComponentAction::on_state_update was invoked.
As for actual updating the state of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.
This function is invoked periodically as the second execution pass of Two-Pass Execution in Periodic Sampled Data Processing.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::onRateChanged ( RTC::UniqueId  ec_id  )  [protected, virtual]

Callback function to change execution cycle.

This is a callback function that is executed when DataFlowComponentAction::on_rate_changed was invoked.
As for actual changing execution cycle of each component, since this function is dummy-implemented to return RTC::RTC_OK unconditionally, you need to implement this function by overriding it.
This function is invoked when the execution of ExecutionContext was updated in Periodic Sampled Data Processing.

Parameters:
ec_id ID of the participant ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::initialize (  )  throw (CORBA::SystemException) [virtual]

[CORBA interface] IInitialize the RTC that realizes this interface.

The invocation of this operation shall result in the invocation of the callback ComponentAction::on_initialize.

Constraints

Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::finalize (  )  throw (CORBA::SystemException) [virtual]

[CORBA interface] Finalize the RTC for preparing it for destruction

This invocation of this operation shall result in the invocation of the callback ComponentAction::on_finalize.

Constraints

Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::exit (  )  throw (CORBA::SystemException) [virtual]

[CORBA interface]top the RTC's execution context(s) and finalize it along with its contents.

Any execution contexts for which the RTC is the owner shall be stopped. If the RTC participates in any execution contexts belonging to another RTC that contains it, directly or indirectly (i.e. the containing RTC is the owner of the ExecutionContext), it shall be deactivated in those contexts. After the RTC is no longer Active in any Running execution context, it and any RTCs contained transitively within it shall be finalized.

Constraints

Returns:
The return code of ReturnCode_t type

virtual CORBA::Boolean RTC::RTObject_impl::is_alive (  )  throw (CORBA::SystemException) [virtual]

[CORBA interface] Confirm whether RTC is the alive state

A component is alive or not regardless of the execution context from which it is observed. However, whether or not it is Active, Inactive, or in Error is dependent on the execution context(s) in which it is running. That is, it may be Active in one context but Inactive in another. Therefore, this operation shall report whether this RTC is either Active, Inactive or in Error; which of those states a component is in with respect to a particular context may be queried from the context itself.

Returns:
Result of Alive state confirmation

virtual ExecutionContextList* RTC::RTObject_impl::get_contexts (  )  throw (CORBA::SystemException) [virtual]

[CORBA interface] Get ExecutionContextList.

This operation returns a list of all execution contexts owned by this RTC.

Returns:
ExecutionContext List

virtual ExecutionContext_ptr RTC::RTObject_impl::get_context ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[CORBA interface] Get ExecutionContext.

Obtain a reference to the execution context represented by the given handle. The mapping from handle to context is specific to a particular RTC instance. The given handle must have been obtained by a previous call to attach_context on this RTC.

Parameters:
ec_id ExecutionContext handle
Returns:
ExecutionContext

UniqueId RTC::RTObject_impl::attach_executioncontext ( ExecutionContext_ptr  exec_context  )  throw (CORBA::SystemException)

[CORBA interface] Attach ExecutionContext

Inform this RTC that it is participating in the given execution context. Return a handle that represents the association of this RTC with the context. This operation is intended to be invoked by ExecutionContextOperations::add_component. It is not intended for use by other clients.

Parameters:
exec_context Participating ExecutionContext
Returns:
ExecutionContext Handle

ReturnCode_t RTC::RTObject_impl::detach_executioncontext ( UniqueId  ec_id  )  throw (CORBA::SystemException)

[CORBA interface] Detach ExecutionContext.

Inform this RTC that it is no longer participating in the given execution context. This operation is intended to be invoked by ExecutionContextOperations::remove_component. It is not intended for use by other clients. Constraints

Parameters:
ec_id Detaching ExecutionContext Handle
Returns:
The return code of ReturnCode_t type

virtual ComponentProfile* RTC::RTObject_impl::get_component_profile (  )  throw (CORBA::SystemException) [virtual]

[RTObject CORBA interface] Get RTC's profile

This operation returns the ComponentProfile of the RTC.

Returns:
ComponentProfile

virtual PortList* RTC::RTObject_impl::get_ports (  )  throw (CORBA::SystemException) [virtual]

[RTObject CORBA interface] Get Ports

This operation returns the reference of ports held by RTC.

Returns:
PortList

virtual ExecutionContextServiceList* RTC::RTObject_impl::get_execution_context_services (  )  throw (CORBA::SystemException) [virtual]

[RTObject CORBA interface] Get ExecutionContextAdmin

This operation returns a list containing an ExecutionContextAdmin for every ExecutionContext owned by the RTC.

Returns:
ExecutionContextService List

virtual ReturnCode_t RTC::RTObject_impl::on_initialize (  )  throw (CORBA::SystemException) [virtual]

[ComponentAction CORBA interface] Initialize RTC

The RTC has been initialized and entered the Alive state. Any RTC-specific initialization logic should be performed here. As a result of this operation, onInitialize() callback function is called.

Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_finalize (  )  throw (CORBA::SystemException) [virtual]

[ComponentAction CORBA interface] Finalize RTC

The RTC is being destroyed. Any final RTC-specific tear-down logic should be performed here. As a result of this operation, onFinalize() callback function is called.

Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_startup ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[ComponentAction CORBA interface] Startup RTC

The given execution context, in which the RTC is participating, has transitioned from Stopped to Running. As a result of this operation, onStartup() callback function is called.

Parameters:
ec_id ID of ExecutionContext that transited to the state
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_shutdown ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[ComponentAction CORBA interface] Shutdown RTC

The given execution context, in which the RTC is participating, has transitioned from Running to Stopped. As a result of this operation, onShutdown() callback function is called.

Parameters:
ec_id ID of ExecutionContext that transited to the state
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_activated ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[ComponentAction CORBA interface] Activate RTC

The RTC has been activated in the given execution context. As a result of this operation, onActivated() callback function is called.

Parameters:
ec_id ID of activation ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_deactivated ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[ComponentAction CORBA interface] Deactivate RTC

The RTC has been deactivated in the given execution context. As a result of this operation, onDeactivated() callback function is called.

Parameters:
ec_id ID of deactivation ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_aborting ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[ComponentAction CORBA interface] Transition to Error State

The RTC is transitioning from the Active state to the Error state in some execution context. This callback is invoked only a single time for time that the RTC transitions into the Error state from another state. This behavior is in contrast to that of on_error. As a result of this operation, onAborting() callback function is invoked.

Parameters:
ec_id ID of ExecutionContext that transited to the state
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_error ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[ComponentAction CORBA interface] Error Processing of RTC

The RTC remains in the Error state. If the RTC is in the Error state relative to some execution context when it would otherwise be invoked from that context (according to the context’s ExecutionKind), this callback shall be invoked instead. For example,

Parameters:
ec_id ID of target ExecutionContext
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_reset ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[ComponentAction CORBA interface] Resetting RTC

The RTC is in the Error state. An attempt is being made to recover it such that it can return to the Inactive state. If the RTC was successfully recovered and can safely return to the Inactive state, this method shall complete with ReturnCode_t::OK. Any other result shall indicate that the RTC should remain in the Error state. As a result of this operation, onReset() callback function is invoked.

Parameters:
ec_id ID of target ExecutionContext for the reset
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_execute ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[DataFlowComponentAction CORBA interface] Primary Periodic Operation of RTC

This operation will be invoked periodically at the rate of the given execution context as long as the following conditions hold:

Constraints

Parameters:
ec_id ID of target ExecutionContext for Primary Periodic Operation
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_state_update ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[DataFlowComponentAction CORBA interface] Secondary Periodic Operation of RTC

This operation will be invoked periodically at the rate of the given execution context as long as the following conditions hold:

Constraints

Parameters:
ec_id ID of target ExecutionContext for Secondary Periodic Operation
Returns:
The return code of ReturnCode_t type

virtual ReturnCode_t RTC::RTObject_impl::on_rate_changed ( UniqueId  ec_id  )  throw (CORBA::SystemException) [virtual]

[DataFlowComponentAction CORBA interface] Notify rate changed

This operation is a notification that the rate of the indicated execution context has changed. As a result of this operation, onRateChanged() callback function is called.

Constraints

Parameters:
ec_id ID of target ExecutionContext for Operation
Returns:
The return code of ReturnCode_t type

virtual SDOPackage::OrganizationList* RTC::RTObject_impl::get_owned_organizations (  )  throw (CORBA::SystemException, SDOPackage::NotAvailable) [virtual]

[SDO interface] Get Organization list

SDOSystemElement can be the owner of zero or more organizations. If the SDOSystemElement owns one or more Organizations, this operation returns the list of Organizations that the SDOSystemElement owns. If it does not own any Organization, it returns empty list.

Returns:
Owned Organization List
Exceptions:
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InternalError The target SDO cannot execute the operation completely due to some internal error.

virtual char* RTC::RTObject_impl::get_sdo_id (  )  throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get the SDO ID

This operation returns id of the SDO. This operation throws SDOException with one of the following types.

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

virtual char* RTC::RTObject_impl::get_sdo_type (  )  throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get SDO type

This operation returns sdoType of the SDO. This operation throws SDOException with one of the following types.

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

virtual SDOPackage::DeviceProfile* RTC::RTObject_impl::get_device_profile (  )  throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get SDO DeviceProfile list

This operation returns the DeviceProfile of the SDO. If the SDO does not represent any hardware device, then a DeviceProfile with empty values are returned. This operation throws SDOException with one of the following types.

Returns:
The DeviceProfile of the SDO.
Exceptions:
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InternalError The target SDO cannot execute the operation completely due to some internal error.

virtual SDOPackage::ServiceProfileList* RTC::RTObject_impl::get_service_profiles (  )  throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get SDO ServiceProfile

This operation returns a list of ServiceProfiles that the SDO has. If the SDO does not provide any service, then an empty list is returned. This operation throws SDOException with one of the following types.

Returns:
List of ServiceProfiles of all the services the SDO is providing.
Exceptions:
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InternalError The target SDO cannot execute the operation completely due to some internal error.

virtual SDOPackage::ServiceProfile* RTC::RTObject_impl::get_service_profile ( const char *  id  )  throw (CORBA::SystemException, SDOPackage::InvalidParameter, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get specified ServiceProfile

This operation returns the ServiceProfile that is specified by the argument "id."

Parameters:
id The identifier referring to one of the ServiceProfiles.
Returns:
The profile of the specified service.
Exceptions:
InvalidParameter The ServiceProfile that is specified by the argument 'id' does not exist or if 'id' is 'null.'
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InternalError The target SDO cannot execute the operation completely due to some internal error.

virtual SDOPackage::SDOService_ptr RTC::RTObject_impl::get_sdo_service ( const char *  id  )  throw (CORBA::SystemException, SDOPackage::InvalidParameter, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get specified SDO Service's reference

This operation returns an object implementing an SDO's service that is identified by the identifier specified as an argument. Different services provided by an SDO are distinguished with different identifiers. See OMG SDO specification Section 2.2.8, "ServiceProfile," on page 2-12 for more details.

Parameters:
id The identifier referring to one of the SDO Service
Returns:
The reference requested to SDO Service.
Exceptions:
InvalidParameter Argument “id” is null, or if the ServiceProfile that is specified by argument “id” does not exist.
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InternalError The target SDO cannot execute the operation completely due to some internal error.

virtual SDOPackage::Configuration_ptr RTC::RTObject_impl::get_configuration (  )  throw (CORBA::SystemException, SDOPackage::InterfaceNotImplemented, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get Configuration object

This operation returns an object implementing the Configuration interface. The Configuration interface is one of the interfaces that each SDO maintains. The interface is used to configure the attributes defined in DeviceProfile, ServiceProfile, and Organization. See OMG SDO specification Section 2.3.5, "Configuration Interface," on page 2-24 for more details about the Configuration interface.

Returns:
The Configuration interface of an SDO.
Exceptions:
InterfaceNotImplemented The target SDO has no Configuration interface.
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InternalError The target SDO cannot execute the operation completely due to some internal error.

virtual SDOPackage::Monitoring_ptr RTC::RTObject_impl::get_monitoring (  )  throw (CORBA::SystemException, SDOPackage::InterfaceNotImplemented, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get Monitoring object

This operation returns an object implementing the Monitoring interface. The Monitoring interface is one of the interfaces that each SDO maintains. The interface is used to monitor the properties of an SDO. See OMG SDO specification Section 2.3.7, "Monitoring Interface," on page 2-35 for more details about the Monitoring interface.

Returns:
The Monitoring interface of an SDO.
Exceptions:
InterfaceNotImplemented The target SDO has no Configuration interface.
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InternalError The target SDO cannot execute the operation completely due to some internal error.

virtual SDOPackage::OrganizationList* RTC::RTObject_impl::get_organizations (  )  throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get Organization list

An SDO belongs to zero or more organizations. If the SDO belongs to one or more organizations, this operation returns the list of organizations that the SDO belongs to. An empty list is returned if the SDO does not belong to any Organizations.

Returns:
The list of Organizations that the SDO belong to.
Exceptions:
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InternalError The target SDO cannot execute the operation completely due to some internal error.

virtual SDOPackage::NVList* RTC::RTObject_impl::get_status_list (  )  throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get SDO Status list

This operation returns an NVlist describing the status of an SDO.

Returns:
The actual status of an SDO.
Exceptions:
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InternalError The target SDO cannot execute the operation completely due to some internal error.

virtual CORBA::Any* RTC::RTObject_impl::get_status ( const char *  name  )  throw (CORBA::SystemException, SDOPackage::InvalidParameter, SDOPackage::NotAvailable, SDOPackage::InternalError) [virtual]

[SDO interface] Get SDO Status

Parameters:
name One of the parameters defining the "status" of an SDO.
Returns:
The value of the specified status parameter.
Exceptions:
SDONotExists The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.)
NotAvailable The target SDO is reachable but cannot respond.
InvalidParameter The parameter defined by "name" is null or does not exist.
InternalError The target SDO cannot execute the operation completely due to some internal error.

const char* RTC::RTObject_impl::getInstanceName (  )  [inline]

[local interface] Get instance name

Return the instance name that has been set in ComponentProfile.

Returns:
Instance name

void RTC::RTObject_impl::setInstanceName ( const char *  instance_name  ) 

[local interface] Set instance name

Set the instance name specified in ComponentProfile.

Parameters:
instance_name Instance name

const char* RTC::RTObject_impl::getTypeName (  )  [inline]

[local interface] Get type name

Get the type name has been set in ComponentProfile.

Returns:
Type name

const char* RTC::RTObject_impl::getDescription (  )  [inline]

[local interface] GetDescription

Get the Description has been set in ComponentProfile.

Returns:
Description

const char* RTC::RTObject_impl::getVersion (  )  [inline]

[local interface] Get version information

Get the version information that has been set in ComponentProfile.

Returns:
Version information

const char* RTC::RTObject_impl::getVendor (  )  [inline]

[local interface] Get vendor

Get the vendor information that has been set in ComponentProfile.

Returns:
Vendor information

const char* RTC::RTObject_impl::getCategory (  )  [inline]

[local interface] Get category information

Get the category information that has been set in ComponentProfile.

Returns:
Category information

std::vector<std::string> RTC::RTObject_impl::getNamingNames (  ) 

[local interface] Get Naming Server information

Get Naming Server information that has been set.

Returns:
Naming Server list

void RTC::RTObject_impl::setObjRef ( const RTObject_ptr  rtobj  ) 

[local interface] Set the object reference

Set RTC's CORBA object reference.

Parameters:
rtobj The object reference

RTObject_ptr RTC::RTObject_impl::getObjRef (  )  const

[local interface] Get the object reference

Get CORBA object reference that has been set

Returns:
The object reference

void RTC::RTObject_impl::setProperties ( const Properties prop  ) 

[local interface] Set RTC property

This operation sets the properties to the RTC. The given property values should include information for ComponentProfile. Generally, this operation is designed to be called from Manager, when RTC is initialized

Parameters:
prop Property for RTC.

Properties& RTC::RTObject_impl::getProperties (  ) 

[local interface] Get RTC property

This operation returns the properties of the RTC. Empty property would be returned, if RTC has no property.

Returns:
Property for RTC.

template<typename VarType>
bool RTC::RTObject_impl::bindParameter ( const char *  param_name,
VarType &  var,
const char *  def_val,
bool(*)(VarType &, const char *)  trans = ::stringTo 
) [inline]

Setup for configuration parameters.

Bind configuration parameter to its variable. Specify the data type of configuration parameter as <VarType>.

Parameters:
param_name Configuration parameter name
var Variables to store configuration parameter
def_val Default value of configuration parameter
trans Function to transform configuration parameter type into string format
Returns:
Setup result (Successful:true, Failed:false)

void RTC::RTObject_impl::updateParameters ( const char *  config_set  ) 

Update configuration parameters (by ID).

Update configuration parameter value by the value that set to a configuration set of specified ID.

Parameters:
config_set The target configuration set's ID for setup

void RTC::RTObject_impl::registerPort ( PortBase port  ) 

[local interface] Register Port

This operation registers a Port held by this RTC. In order to enable access to the Port from outside of RTC, the Port must be registered by this operation. The Port that is registered by this operation would be identified by PortProfile.name in the inside of RTC. Therefore, the Port should have unique PortProfile.name in the RTC. The registering Port would be activated properly, and the reference and the object reference would be stored in lists in RTC.

Parameters:
port Port which is registered to the RTC

template<class DataType, template< class DataType > class Buffer>
void RTC::RTObject_impl::registerInPort ( const char *  name,
InPort< DataType, Buffer > &  inport 
) [inline]

[local interface] Register DataInPort

This operation registers DataInPort held by this RTC. Set "port.dataport" and "tcp_any" to property of Port, and create instances of DataInPort and register it.

Parameters:
name Port name
inport DataInPort which is registered to the RTC

template<class DataType, template< class DataType > class Buffer>
void RTC::RTObject_impl::registerOutPort ( const char *  name,
OutPort< DataType, Buffer > &  outport 
) [inline]

[local interface] Register DataOutPort

This operation registers DataOutPor held by this RTC. Set "port.dataport" and "tcp_any" to property of Port, and then create instances of DataOutPort and register it.

Parameters:
name Port name
outport DataOutPort which is registered to the RTC

void RTC::RTObject_impl::deletePort ( PortBase port  ) 

[local interface] Unregister Port

This operation unregisters a Port held by this RTC.

Parameters:
port Port which is unregistered

void RTC::RTObject_impl::deletePortByName ( const char *  port_name  ) 

[local interface] Delete Port by specifying its name

Delete Port which RTC has by specifying its name.

Parameters:
port_name Name of Port which is deleted

void RTC::RTObject_impl::finalizePorts (  ) 

Unregister All Ports.

This operation deactivates the all Ports and deletes the all Port's registrations in the RTC

void RTC::RTObject_impl::shutdown (  )  [protected]

Shutdown RTC.

This operation ececutes RTC's termination. This unregisters all Ports, deactivates corresponding CORBA objects and shuts down RTC.


Member Data Documentation

Manager* RTC::RTObject_impl::m_pManager [protected]

Manager object.

CORBA::ORB_var RTC::RTObject_impl::m_pORB [protected]

The pointer to the ORB.

PortableServer::POA_var RTC::RTObject_impl::m_pPOA [protected]

The pointer to the POA.

SDOPackage::OrganizationList RTC::RTObject_impl::m_sdoOwnedOrganizations [protected]

SDO owned organization list.

SDOPackage::ServiceProfileList RTC::RTObject_impl::m_sdoSvcProfiles [protected]

SDOService Profile List.

SDOPackage::Configuration_impl* RTC::RTObject_impl::m_pSdoConfigImpl [protected]

The pointer to the SDO Configuration Object.

SDOPackage::Configuration_var RTC::RTObject_impl::m_pSdoConfig [protected]

The pointer to the SDO Configuration Interface.

SDOPackage::OrganizationList RTC::RTObject_impl::m_sdoOrganizations [protected]

SDO organization.

SDOPackage::NVList RTC::RTObject_impl::m_sdoStatus [protected]

SDO Status.

ComponentProfile RTC::RTObject_impl::m_profile [protected]

ComponentProfile.

RTObject_ptr RTC::RTObject_impl::m_objref [protected]

Object reference.

PortAdmin RTC::RTObject_impl::m_portAdmin [protected]

List of Port Object reference.

ExecutionContextServiceList RTC::RTObject_impl::m_execContexts [protected]

List of ExecutionContextService.

bool RTC::RTObject_impl::m_created [protected]

Created Status Flag.

bool RTC::RTObject_impl::m_alive [protected]

Alive Status Flag.

Properties RTC::RTObject_impl::m_properties [protected]

RTC's Property.

ConfigAdmin RTC::RTObject_impl::m_configsets [protected]

Configuration Administrator Object.


Generated on Thu May 29 15:03:33 2008 for OpenRTM by  doxygen 1.5.3