OpenRTM-aist  2.1.0
OpenHRPExecutionContext.h
[詳解]
1 // -*- C++ -*-
19 #ifndef RTC_OPENHRPEXECUTIONCONTEXT_H
20 #define RTC_OPENHRPEXECUTIONCONTEXT_H
21 
22 #include <mutex>
23 #include <rtm/RTC.h>
25 
26 namespace RTC
27 {
47  : public virtual POA_OpenRTM::ExtTrigExecutionContextService,
48  public virtual PortableServer::RefCountServantBase,
50  {
51  public:
60 
69 
70 
71  //============================================================
72  // ExtTrigExecutionContextService
73  //============================================================
87  void tick() override;
88 
89  //============================================================
90  // ExecutionContextService
91  //============================================================
116  CORBA::Boolean is_running() override;
117 
145  RTC::ReturnCode_t start() override;
146 
173  RTC::ReturnCode_t stop() override;
174 
195  CORBA::Double get_rate() override;
196 
226  RTC::ReturnCode_t set_rate(CORBA::Double rate) override;
227 
261  RTC::ReturnCode_t
263 
296  RTC::ReturnCode_t
298 
330  RTC::ReturnCode_t
332 
359  RTC::LifeCycleState
361 
381  RTC::ExecutionKind get_kind() override;
382 
414  RTC::ReturnCode_t add_component(RTC::LightweightRTObject_ptr comp) override;
415 
446  RTC::ReturnCode_t
448 
468  RTC::ExecutionContextProfile* get_profile() override;
469  protected:
470  // template virtual functions adding/removing component
474  RTC::ReturnCode_t
479  RTC::ReturnCode_t
484  std::mutex m_tickmutex;
485  private:
493  RTC::Logger rtclog{"exttrig_sync_ec"};
494  }; // class OpenHRPExecutionContext
495 } // namespace RTC
496 
497 
498 extern "C"
499 {
508 }
509 
510 #endif // RTC_OPENHRPEXECUTIONCONTEXT_H
511 
ExecutionContext base class
void OpenHRPExecutionContextInit(RTC::Manager *manager)
ECFactoryへの登録のための初期化関数
RTComponent header
ExecutionContext用基底クラス
Definition: ExecutionContextBase.h:366
Logger クラス
Definition: SystemLogger.h:101
Manager クラス
Definition: Manager.h:91
OpenHRPExecutionContext クラス
Definition: OpenHRPExecutionContext.h:50
RTC::ReturnCode_t onRemovedComponent(RTC::LightweightRTObject_ptr rtobj) override
onRemovedComponent() template function
CORBA::Double get_rate() override
ExecutionContext の実行周期(Hz)を取得する
RTC::ReturnCode_t start() override
ExecutionContext の実行を開始
RTC::ReturnCode_t reset_component(RTC::LightweightRTObject_ptr comp) override
RTコンポーネントをリセットする
RTC::ReturnCode_t onAddedComponent(RTC::LightweightRTObject_ptr rtobj) override
onAddedComponent() template function
RTC::ReturnCode_t stop() override
ExecutionContext の実行を停止
CORBA::Boolean is_running() override
ExecutionContext 実行状態確認関数
RTC::ReturnCode_t set_rate(CORBA::Double rate) override
ExecutionContext の実行周期(Hz)を設定する
RTC::ReturnCode_t add_component(RTC::LightweightRTObject_ptr comp) override
RTコンポーネントを追加する
RTC::ReturnCode_t deactivate_component(RTC::LightweightRTObject_ptr comp) override
RTコンポーネントを非アクティブ化する
RTC::ExecutionContextProfile * get_profile() override
ExecutionContextProfile を取得する
RTC::ReturnCode_t activate_component(RTC::LightweightRTObject_ptr comp) override
RTコンポーネントをアクティブ化する
~OpenHRPExecutionContext() override
デストラクタ
std::mutex m_tickmutex
Mutex to guard tick() reenter.
Definition: OpenHRPExecutionContext.h:484
void tick() override
処理を1ステップ進める
RTC::LifeCycleState get_component_state(RTC::LightweightRTObject_ptr comp) override
RTコンポーネントの状態を取得する
OpenHRPExecutionContext()
コンストラクタ
RTC::ExecutionKind get_kind() override
ExecutionKind を取得する
RTC::ReturnCode_t remove_component(RTC::LightweightRTObject_ptr comp) override
RTコンポーネントを参加者リストから削除する
RTC::LightweightRTObject_ptr LightweightRTObject_ptr
Definition: ExecutionContextWorker.h:37
RTコンポーネント