OpenRTM-aist
2.1.0
Toggle main menu visibility
読み取り中…
検索中…
一致する文字列を見つけられません
ExecutionContextProfile.h
[詳解]
1
// -*- C++ -*-
18
19
#ifndef RTC_EXECUTIONCONTEXTPROFILE_H
20
#define RTC_EXECUTIONCONTEXTPROFILE_H
21
22
#include <mutex>
23
#include <coil/Properties.h>
24
25
#include <rtm/idl/RTCStub.h>
26
#include <
rtm/SystemLogger.h
>
27
28
namespace
RTC_impl
29
{
50
class
ExecutionContextProfile
51
{
52
public
:
72
explicit
ExecutionContextProfile
(RTC::ExecutionKind kind = RTC::PERIODIC);
73
87
virtual
~ExecutionContextProfile
();
88
112
void
setObjRef
(RTC::ExecutionContextService_ptr ec_ptr);
113
133
RTC::ExecutionContextService_ptr
getObjRef
()
const
;
134
168
RTC::ReturnCode_t
setRate
(
double
rate);
169
RTC::ReturnCode_t
setPeriod
(std::chrono::nanoseconds period);
170
191
double
getRate
()
const
;
192
std::chrono::nanoseconds
getPeriod
()
const
;
193
216
static
const
char
*
getKindString
(RTC::ExecutionKind kind) ;
217
const
char
*
getKindString
()
const
218
{
219
return
getKindString
(m_profile.kind);
220
}
221
240
RTC::ReturnCode_t
setKind
(RTC::ExecutionKind kind);
241
261
RTC::ExecutionKind
getKind
()
const
;
262
280
RTC::ReturnCode_t
setOwner
(RTC::LightweightRTObject_ptr comp);
281
298
RTC::RTObject_ptr
getOwner
()
const
;
299
331
RTC::ReturnCode_t
addComponent
(RTC::LightweightRTObject_ptr comp);
332
363
RTC::ReturnCode_t
removeComponent
(RTC::LightweightRTObject_ptr comp);
364
392
#ifndef ORB_IS_RTORB
393
const
RTC::RTCList&
getComponentList
()
const
;
394
#else
395
const
RTC_RTCList&
getComponentList
()
const
;
396
#endif
397
418
void
setProperties
(coil::Properties& props);
419
439
coil::Properties
getProperties
()
const
;
440
463
RTC::ExecutionContextProfile*
getProfile
();
464
482
const
RTC::ExecutionContextProfile&
getProfile
()
const
;
483
499
void
lock
()
const
;
500
516
void
unlock
()
const
;
517
518
private
:
526
mutable
RTC::Logger
rtclog;
534
RTC::ExecutionContextProfile m_profile;
535
543
mutable
std::mutex m_profileMutex;
544
552
std::chrono::nanoseconds m_period;
553
561
RTC::ExecutionContextService_var m_ref;
562
563
class
find_participant
564
{
565
RTC::RTObject_var m_comp;
566
public
:
567
explicit
find_participant(RTC::RTObject_ptr comp)
568
: m_comp(
RTC
::RTObject::_duplicate(comp)) {}
569
#ifdef ORB_IS_ORBEXPRESS
570
bool
operator()(RTC::RTObject_var comp)
571
{
572
return
m_comp->_is_equivalent(comp.in());
573
}
574
#else
575
bool
operator()(RTC::RTObject_ptr comp)
576
{
577
return
m_comp->_is_equivalent(comp);
578
}
579
#endif
580
};
581
};
// class ExecutionContextProfile
582
}
// namespace RTC_impl
583
584
#endif
// RTC_EXECUTIONCONTEXTPROFILE_H
SystemLogger.h
RT component logger class
RTC::Logger
Logger クラス
Definition
SystemLogger.h:101
RTC_impl::ExecutionContextProfile::setObjRef
void setObjRef(RTC::ExecutionContextService_ptr ec_ptr)
CORBA オブジェクト参照のセット
RTC_impl::ExecutionContextProfile::~ExecutionContextProfile
virtual ~ExecutionContextProfile()
デストラクタ
RTC_impl::ExecutionContextProfile::addComponent
RTC::ReturnCode_t addComponent(RTC::LightweightRTObject_ptr comp)
RTコンポーネントを追加する
RTC_impl::ExecutionContextProfile::getComponentList
const RTC::RTCList & getComponentList() const
RTコンポーネントの参加者リストを取得する
RTC_impl::ExecutionContextProfile::removeComponent
RTC::ReturnCode_t removeComponent(RTC::LightweightRTObject_ptr comp)
RTコンポーネントを参加者リストから削除する
RTC_impl::ExecutionContextProfile::setProperties
void setProperties(coil::Properties &props)
Propertiesをセットする
RTC_impl::ExecutionContextProfile::getProfile
RTC::ExecutionContextProfile * getProfile()
Profileを取得する
RTC_impl::ExecutionContextProfile::setKind
RTC::ReturnCode_t setKind(RTC::ExecutionKind kind)
ExecutionKind を設定する
RTC_impl::ExecutionContextProfile::setOwner
RTC::ReturnCode_t setOwner(RTC::LightweightRTObject_ptr comp)
Ownerコンポーネントをセットする。
RTC_impl::ExecutionContextProfile::lock
void lock() const
ExecutionContextProfileをロックする
RTC_impl::ExecutionContextProfile::getKindString
const char * getKindString() const
Definition
ExecutionContextProfile.h:217
RTC_impl::ExecutionContextProfile::getProfile
const RTC::ExecutionContextProfile & getProfile() const
Profileを取得する
RTC_impl::ExecutionContextProfile::getPeriod
std::chrono::nanoseconds getPeriod() const
RTC_impl::ExecutionContextProfile::setRate
RTC::ReturnCode_t setRate(double rate)
ExecutionContext の実行周期(Hz)を設定する
RTC_impl::ExecutionContextProfile::getKind
RTC::ExecutionKind getKind() const
ExecutionKind を取得する
RTC_impl::ExecutionContextProfile::getRate
double getRate() const
ExecutionContext の実行周期(Hz)を取得する
RTC_impl::ExecutionContextProfile::getKindString
static const char * getKindString(RTC::ExecutionKind kind)
ExecutionKind を文字列化する
RTC_impl::ExecutionContextProfile::getProperties
coil::Properties getProperties() const
Propertiesを取得する
RTC_impl::ExecutionContextProfile::unlock
void unlock() const
ExecutionContextProfileをアンロックする
RTC_impl::ExecutionContextProfile::setPeriod
RTC::ReturnCode_t setPeriod(std::chrono::nanoseconds period)
RTC_impl::ExecutionContextProfile::getObjRef
RTC::ExecutionContextService_ptr getObjRef() const
CORBA オブジェクト参照の取得
RTC_impl::ExecutionContextProfile::getOwner
RTC::RTObject_ptr getOwner() const
Ownerコンポーネントの参照を取得する
RTC_impl::ExecutionContextProfile::ExecutionContextProfile
ExecutionContextProfile(RTC::ExecutionKind kind=RTC::PERIODIC)
デフォルトコンストラクタ
RTC_impl
Definition
ExecutionContextProfile.h:29
RTC
RTコンポーネント
構築:
1.17.0