OpenRTM-aist
2.1.0
Toggle main menu visibility
読み取り中…
検索中…
一致する文字列を見つけられません
InPortConsumer.h
[詳解]
1
// -*- C++ -*-
19
20
#ifndef RTC_INPORTCONSUMER_H
21
#define RTC_INPORTCONSUMER_H
22
23
#include <coil/Factory.h>
24
#include <
rtm/DataPortStatus.h
>
25
#include <
rtm/ByteData.h
>
26
27
namespace
coil
28
{
29
class
Properties
;
30
}
// namespace coil
31
32
// Why RtORB does not allow forward declaration?
33
#if !defined ORB_IS_RTORB && !defined ORB_IS_ORBEXPRESS
34
namespace
SDOPackage
35
{
36
class
NVList;
37
}
// namespace SDOPackage
38
#endif
// ORB_IS_RTORB
39
40
41
42
namespace
RTC
43
{
77
class
InPortConsumer
78
{
79
public
:
80
94
virtual
~InPortConsumer
() =
default
;
95
110
virtual
void
init
(coil::Properties& prop) = 0;
111
146
virtual
DataPortStatus
put
(
ByteData
& data) = 0;
147
171
virtual
void
publishInterfaceProfile
(SDOPackage::NVList& properties) = 0;
172
196
virtual
bool
subscribeInterface
(
const
SDOPackage::NVList& properties) = 0;
197
215
virtual
void
unsubscribeInterface
(
const
SDOPackage::NVList& properties) = 0;
216
224
struct
publishInterfaceProfileFunc
225
{
226
explicit
publishInterfaceProfileFunc
(SDOPackage::NVList& prop)
227
:
m_prop
(prop) {}
228
void
operator()
(
InPortConsumer
* consumer)
229
{
230
consumer->
publishInterfaceProfile
(
m_prop
);
231
}
232
SDOPackage::NVList&
m_prop
;
233
};
234
242
struct
subscribeInterfaceFunc
243
{
244
explicit
subscribeInterfaceFunc
(SDOPackage::NVList& prop)
245
:
m_prop
(prop) {}
246
bool
operator()
(
InPortConsumer
* consumer)
247
{
248
return
consumer->
subscribeInterface
(
m_prop
);
249
}
250
SDOPackage::NVList&
m_prop
;
251
};
252
253
254
};
255
256
using
InPortConsumerFactory
= ::coil::GlobalFactory<InPortConsumer>;
257
}
// namespace RTC
258
259
#if defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)
260
EXTERN
template
class
DLL_PLUGIN coil::GlobalFactory<RTC::InPortConsumer>;
261
#elif defined(__GNUC__)
262
EXTERN
template
class
coil::GlobalFactory<RTC::InPortConsumer>;
263
#endif
264
265
#endif
// RTC_INPORTCONSUMER_H
ByteData.h
DataPortStatus.h
DataPortStatus class
RTC::ByteData
シリアライズ後のバイト列を操作するクラス
Definition
ByteData.h:30
RTC::InPortConsumer
InPortConsumer 抽象クラス
Definition
InPortConsumer.h:78
RTC::InPortConsumer::~InPortConsumer
virtual ~InPortConsumer()=default
デストラクタ
RTC::InPortConsumer::publishInterfaceProfile
virtual void publishInterfaceProfile(SDOPackage::NVList &properties)=0
InterfaceProfile情報を公開する
RTC::InPortConsumer::unsubscribeInterface
virtual void unsubscribeInterface(const SDOPackage::NVList &properties)=0
データ送出通知受け取りからの登録解除
RTC::InPortConsumer::subscribeInterface
virtual bool subscribeInterface(const SDOPackage::NVList &properties)=0
データ送出通知受け取りへの登録
RTC::InPortConsumer::init
virtual void init(coil::Properties &prop)=0
設定初期化
RTC::InPortConsumer::put
virtual DataPortStatus put(ByteData &data)=0
接続先へのデータ送信
RTC
RTコンポーネント
RTC::InPortConsumerFactory
::coil::GlobalFactory< InPortConsumer > InPortConsumerFactory
Definition
InPortConsumer.h:256
RTC::Properties
coil::Properties Properties
Definition
RTC.h:72
RTC::DataPortStatus
DataPortStatus
Definition
DataPortStatus.h:114
SDOPackage
SDO パッケージ
Definition
InPortConsumer.h:35
coil
Definition
DefaultPeriodicTask.h:24
RTC::InPortConsumer::publishInterfaceProfileFunc::operator()
void operator()(InPortConsumer *consumer)
Definition
InPortConsumer.h:228
RTC::InPortConsumer::publishInterfaceProfileFunc::publishInterfaceProfileFunc
publishInterfaceProfileFunc(SDOPackage::NVList &prop)
Definition
InPortConsumer.h:226
RTC::InPortConsumer::publishInterfaceProfileFunc::m_prop
SDOPackage::NVList & m_prop
Definition
InPortConsumer.h:232
RTC::InPortConsumer::subscribeInterfaceFunc::m_prop
SDOPackage::NVList & m_prop
Definition
InPortConsumer.h:250
RTC::InPortConsumer::subscribeInterfaceFunc::operator()
bool operator()(InPortConsumer *consumer)
Definition
InPortConsumer.h:246
RTC::InPortConsumer::subscribeInterfaceFunc::subscribeInterfaceFunc
subscribeInterfaceFunc(SDOPackage::NVList &prop)
Definition
InPortConsumer.h:244
構築:
1.17.0