RTC::ExecutionContextService Interface Reference

ExecutionContextService. More...

import "RTC.idl";

Inheritance diagram for RTC::ExecutionContextService:

RTC::ExecutionContext SDOPackage::SDOService OpenRTM::ExtTrigExecutionContextService

List of all members.

Public Member Functions

ExecutionContextProfile get_profile ()
 get_profile
boolean is_running ()
 is_running
ReturnCode_t start ()
 start
ReturnCode_t stop ()
 stop
double get_rate ()
 get_rate
ReturnCode_t set_rate (in double rate)
 set_rate
ReturnCode_t add_component (in LightweightRTObject comp)
 add_component
ReturnCode_t remove_component (in LightweightRTObject comp)
 remove_component
ReturnCode_t activate_component (in LightweightRTObject comp)
 activate_component
ReturnCode_t deactivate_component (in LightweightRTObject comp)
 deactivate_component
ReturnCode_t reset_component (in LightweightRTObject comp)
 reset_component
LifeCycleState get_component_state (in LightweightRTObject comp)
 get_component_state
ExecutionKind get_kind ()
 get_kind


Detailed Description

ExecutionContextService.

Description

An ExecutionContextService exposes an ExecutionContext as an SDO service such that the context may be controlled remotely.

Semantics

Depending on the implementation, this interface may itself be an execution context (that is, it may be passed to the operations of ComponentAction) or it may represent a remote execution context that is not of type ExecutionContextService.

Member Function Documentation

ExecutionContextProfile RTC::ExecutionContextService::get_profile (  ) 

get_profile

Description

This operation provides a profile "descriptor" for the execution context.

boolean RTC::ExecutionContext::is_running (  )  [inherited]

is_running

Description

This operation shall return true if the context is in the Running state.

Semantics

While the context is Running, all Active RTCs participating in the context shall be executed according to the context¡Çs execution kind.

ReturnCode_t RTC::ExecutionContext::start (  )  [inherited]

start

Description

Request that the context enter the Running state. Once the state transition occurs, the ComponentAction::on_startup operation (see Section 5.2.2.4.3) will be invoked.

Description

Semantics

An execution context may not be started until the RT components that participate in it have been initialized. An execution context may be started and stopped multiple times.

Constraints

ReturnCode_t RTC::ExecutionContext::stop (  )  [inherited]

stop

Description

Request that the context enter the Stopped state. Once the transition occurs, the ComponentAction::on_shutdown operation (see Section 5.2.2.4.4) will be invoked.

Semantics

An execution context must be stopped before the RT components that participate in it are finalized.

An execution context may be started and stopped multiple times.

Constraints

double RTC::ExecutionContext::get_rate (  )  [inherited]

get_rate

Description

This operation shall return the rate (in hertz) at which its Active participating RTCs are being invoked.

Semantics

An implementation is permitted to perform some periodic or quasi-periodic processing within an execution context with an ExecutionKind other than PERIODIC. In such a case, the result of this operation is implementation-defined. If no periodic processing of any kind is taking place within the context, this operation shall fail as described in Section 5.2.1.

Constraints

ReturnCode_t RTC::ExecutionContext::set_rate ( in double  rate  )  [inherited]

set_rate

Description

This operation shall set the rate (in hertz) at which this context¡Çs Active participating RTCs are being called.

Semantics

If the execution kind of the context is PERIODIC, a rate change shall result in the invocation of on_rate_changed on any RTCs realizing DataFlowComponentAction that are registered with any RTCs participating in the context. An implementation is permitted to perform some periodic or quasi-periodic processing within an execution context with an ExecutionKind other than PERIODIC. If such is the case, and the implementation reports a rate from get_rate, this operation shall set that rate successfully provided that the given rate is valid. If no periodic processing of any kind is taking place within the context, this operation shall fail with ReturnCode_t::UNSUPPORTED.

Constraints

ReturnCode_t RTC::ExecutionContext::add_component ( in LightweightRTObject  comp  )  [inherited]

add_component

Description

The operation causes the given RTC to begin participating in the execution context.

Semantics

The newly added RTC will receive a call to LightweightRTComponent::attach_context (see Section 5.2.2.2.5) and then enter the Inactive state.

Constraints

ReturnCode_t RTC::ExecutionContext::remove_component ( in LightweightRTObject  comp  )  [inherited]

remove_component

Description

This operation causes a participant RTC to stop participating in the execution context.

Semantics

The removed RTC will receive a call to LightweightRTComponent::detach_context (see Section 5.2.2.2.6).

Constraints

ReturnCode_t RTC::ExecutionContext::activate_component ( in LightweightRTObject  comp  )  [inherited]

activate_component

Description

The given participant RTC is Inactive and is therefore not being invoked according to the execution context¡Çs execution kind. This operation shall cause the RTC to transition to the Active state such that it may subsequently be invoked in this execution context.

Semantics

The callback on_activate shall be called as a result of calling this operation. This operation shall not return until the callback has returned, and shall result in an error if the callback does. The following figure is a non-normative example sequence diagram for activate_component.

Constraints

ReturnCode_t RTC::ExecutionContext::deactivate_component ( in LightweightRTObject  comp  )  [inherited]

deactivate_component

Description

The given RTC is Active in the execution context. Cause it to transition to the Inactive state such that it will not be subsequently invoked from the context unless and until it is activated again.

Semantics

The callback on_deactivate shall be called as a result of calling this operation. This operation shall not return until the callback has returned, and shall result in an error if the callback does. The following figure is a non-normative example sequence diagram for deactivate_component.

Constraints

ReturnCode_t RTC::ExecutionContext::reset_component ( in LightweightRTObject  comp  )  [inherited]

reset_component

Description

Attempt to recover the RTC when it is in Error.

Semantics

The ComponentAction::on_reset callback shall be invoked. This operation shall not return until the callback has returned, and shall result in an error if the callback does. If possible, the RTC developer should implement that callback such that the RTC may be returned to a valid state. * If this operation fails, the RTC will remain in Error.

Constraints

LifeCycleState RTC::ExecutionContext::get_component_state ( in LightweightRTObject  comp  )  [inherited]

get_component_state

Description

This operation shall report the LifeCycleState of the given participant RTC.

Constraints

ExecutionKind RTC::ExecutionContext::get_kind (  )  [inherited]

get_kind

Description

This operation shall report the execution kind of the execution context.


The documentation for this interface was generated from the following file:
Generated on Sun May 24 14:09:07 2009 for OpenRTM by  doxygen 1.5.3