RTC.idl
Simple Wiki Based Contents Management System
Home Projects Memo Misc Topics Software
関心分野 >> RTミドルウェア >> RTC.idl

RTC.idl

このファイルは、RTコンポーネントに関する各種データ型、インターフェースクラスを定義したものである。
ここで定義されるものは、すべてRTCモジュール内である。

定義されているデータ型

  • typedef EXECUTION_HANDLE_TYPE_NATIVE ExecutionContextHandle_t;
  • typedef SDOPackage::UniqueIdentifier UniqueIdentifier;
  • typedef SDOPackage::NVList NVList;
  • enum ReturnCode_t{
       RTC_OK,
       RTC_ERROR,
       BAD_PARAMETER,
       UNSUPPORTED,
       OUT_OF_RESOURCES,
       PRECONDITION_NOT_MET
    
    };
  • enum LifeCycleState{
    CREATED_STATE,
    INACTIVE_STATE,
    ACTIVE_STATE,
    ERROR_STATE
    
    };
  • typedef sequence<ExecutionContext> ExecutionContextList;
  • enum ExecutionKind{
    PERIODIC,
    EVENT_DRIVEN,
    OTHER
    
    };
  • enum PortInterfacePolarity{
    PROVIDED,
    REQUIRED
    
    };
  • struct PortInterfaceProfile(string x 2, PortInterfacePolarity)
  • typedef sequence<PortInterfaceProfile> PortInterfaceProfileList;
  • typedef sequence<PortService> PortServiceList;
  • typedef sequence<RTObject> RTCList;
  • struct ConnectorProfile(string, UniqueIdentifier, PortServiceList, NVList)
  • typedef sequence<ConnectorProfile> ConnectorProfileList;
  • struct PortProfile(string, PortInterfaceProfileList, PortService, ConnectorProfileList, RTObject, NVList)
  • typedef sequence<PortProfile> PortProfileList;
  • struct ExecutionContextProfile(ExecutionKind, double, RTObject, RTCList, NVList)
  • typedef sequence<ExecutionContextProfile> ExecutionContextProfileList;
  • struct FsmBehaviorProfile(FsmParticipantAction, UniqueIdentifier)
  • typedef sequence<FsmBehaviorProfile> FsmBehaviorProfileList;
  • struct FsmProfile(FsmBehaviorProfileList)
  • struct ComponentProfile(string x 6, PortProfileList, RTObject, NVList)
  • typedef sequence<ComponentProfile> ComponentProfileList;
  • typedef sequence<ExecutionContextService> ExecutionContextServiceList;

定義されているインターフェース

  • ComponentAction
    • ReturnCode_t on_initialize();
    • ReturnCode_t on_finalize();
    • ReturnCode_t on_startup(in ExecutionContextHandle_t exec_handle);
    • ReturnCode_t on_shutdown(in ExecutionContextHandle_t exec_handle);
    • ReturnCode_t on_activated(in ExecutionContextHandle_t exec_handle);
    • ReturnCode_t on_deactivated(in ExecutionContextHandle_t exec_handle);
    • ReturnCode_t on_aborting(in ExecutionContextHandle_t exec_handle);
    • ReturnCode_t on_error(in ExecutionContextHandle_t exec_handle);
    • ReturnCode_t on_reset(in ExecutionContextHandle_t exec_handle);
  • LightweightRTObject : ComponentAction
    • ReturnCode_t initialize();
    • ReturnCode_t finalize();
    • boolean is_alive(in ExecutionContext exec_context);
    • ReturnCode_t exit();
    • ExecutionContextHandle_t attach_context(in ExecutionContext exec_context);
    • ReturnCode_t detach_context(in ExecutionContextHandle_t exec_handle);
    • ExecutionContext get_context(in ExecutionContextHandle_t exec_handle);
    • ExecutionContextList get_owned_contexts();
    • ExecutionContextList get_participating_contexts();
    • ExecutionContextHandle_t get_context_handle(in ExecutionContext cxt);
  • ExecutionContext
    • boolean is_running();
    • ReturnCode_t start();
    • ReturnCode_t stop();
    • double get_rate();
    • ReturnCode_t set_rate(in double rate);
    • ReturnCode_t add_component(in LightweightRTObject comp);
    • ReturnCode_t remove_component(in LightweightRTObject comp);
    • ReturnCode_t activate_component(in LightweightRTObject comp);
    • ReturnCode_t deactivate_component(in LightweightRTObject comp);
    • ReturnCode_t reset_component(in LightweightRTObject comp);
    • LifeCycleState get_component_state(in LightweightRTObject comp);
    • ExecutionKind get_kind();
  • DataFlowComponentAction
    • ReturnCode_t on_execute(in ExecutionContextHandle_t exec_handle);
    • ReturnCode_t on_state_update(in ExecutionContextHandle_t exec_handle);
    • ReturnCode_t on_rate_changed(in ExecutionContextHandle_t exec_handle);
  • DataFlowComponent : LightweightRTObject, DataFlowComponentAction
  • Fsm : LightweightRTObject
  • FsmParticipantAction
    • ReturnCode_t on_action(in ExecutionContextHandle_t exec_handle);
  • FsmParticipant : LightweightRTObject, FsmParticipantAction
  • Mode
  • ModeCapable
    • Mode get_default_mode();
    • Mode get_current_mode();
    • Mode get_current_mode_in_context(in ExecutionContext exec_context);
    • Mode get_pending_mode();
    • Mode get_pending_mode_in_context(in ExecutionContext exec_context);
    • ReturnCode_t set_mode(in Mode new_mode, in boolean immediate);
  • MultiModeComponentAction
    • ReturnCode_t on_mode_changed(in ExecutionContextHandle_t exec_handle);
  • MultiModeObject : LightweightRTObject, ModeCapable, MultiModeComponentAction
  • FsmObject
    • ReturnCode_t send_stimulus(in string message, in ExecutionContextHandle_t exec_handle);
  • FsmService : SDOPackage::SDOService
    • FsmProfile get_fsm_profile();
    • ReturnCode_t set_fsm_profile(in FsmProfile fsm_profile);
  • PortService : SDOPackage::SDOService
    • PortProfile get_port_profile();
    • ConnectorProfileList get_connector_profiles();
    • ConnectorProfile get_connector_profile(in UniqueIdentifier connector_id);
    • ReturnCode_t connect(inout ConnectorProfile connector_profile);
    • ReturnCode_t disconnect(in UniqueIdentifier connector_id);
    • ReturnCode_t disconnect_all();
    • ReturnCode_t notify_connect(inout ConnectorProfile connector_profile);
    • ReturnCode_t notify_disconnect(in UniqueIdentifier connector_id);
  • ExecutionContextService : ExecutionContext, SDOPackage::SDOService
    • ExecutionContextProfile get_profile();
  • RTObject : LightweightRTObject, SDOPackage::SDO
    • ComponentProfile get_component_profile();
    • PortServiceList get_ports();