OpenRTM-aist
2.1.0
Toggle main menu visibility
読み取り中…
検索中…
一致する文字列を見つけられません
OutPortCorbaCdrConsumer.h
[詳解]
1
// -*- C++ -*-
19
20
#ifndef RTC_OUTPORTCORBACDRCONSUMER_H
21
#define RTC_OUTPORTCORBACDRCONSUMER_H
22
23
#include <rtm/idl/DataPort_OpenRTMSkel.h>
24
#include <
rtm/CorbaConsumer.h
>
25
#include <
rtm/OutPortConsumer.h
>
26
#include <
rtm/ConnectorListener.h
>
27
#include <
rtm/ConnectorBase.h
>
28
29
namespace
RTC
30
{
55
class
OutPortCorbaCdrConsumer
56
:
public
OutPortConsumer
,
57
public
CorbaConsumer
< ::OpenRTM::OutPortCdr >
58
{
59
public
:
60
74
OutPortCorbaCdrConsumer
();
75
89
~OutPortCorbaCdrConsumer
()
override
;
90
118
void
init
(coil::Properties& prop)
override
;
119
145
void
setBuffer
(
CdrBufferBase
* buffer)
override
;
146
191
void
setListener
(
ConnectorInfo
& info,
192
ConnectorListenersBase
* listeners)
override
;
193
215
DataPortStatus
get
(
ByteData
& data)
override
;
216
239
bool
subscribeInterface
(
const
SDOPackage::NVList& properties)
override
;
240
258
void
unsubscribeInterface
(
const
SDOPackage::NVList& properties)
override
;
259
protected
:
267
mutable
Logger
rtclog
;
268
private
:
276
DataPortStatus
convertReturn(::OpenRTM::PortStatus status,
277
ByteData
& data);
278
288
inline
void
onBufferWrite(
ByteData
& data)
289
{
290
m_listeners->notifyIn(
ConnectorDataListenerType::ON_BUFFER_WRITE
, m_profile, data);
291
}
292
302
inline
void
onBufferFull(
ByteData
& data)
303
{
304
m_listeners->
notifyIn
(
ConnectorDataListenerType::ON_BUFFER_FULL
, m_profile, data);
305
}
306
316
inline
void
onReceived(ByteData& data)
317
{
318
m_listeners->
notifyIn
(
ConnectorDataListenerType::ON_RECEIVED
, m_profile, data);
319
}
320
330
inline
void
onReceiverFull(ByteData& data)
331
{
332
m_listeners->notifyIn(
ConnectorDataListenerType::ON_RECEIVER_FULL
, m_profile, data);
333
}
334
342
inline
void
onSenderEmpty()
343
{
344
m_listeners->notify(
ConnectorListenerType::ON_SENDER_EMPTY
, m_profile);
345
}
346
354
inline
void
onSenderTimeout()
355
{
356
m_listeners->notify(
ConnectorListenerType::ON_SENDER_TIMEOUT
, m_profile);
357
}
358
366
inline
void
onSenderError()
367
{
368
m_listeners->notify(
ConnectorListenerType::ON_SENDER_ERROR
, m_profile);
369
}
370
CdrBufferBase
* m_buffer;
371
ConnectorListenersBase* m_listeners;
372
ConnectorInfo m_profile;
373
};
374
}
// namespace RTC
375
376
extern
"C"
377
{
391
void
OutPortCorbaCdrConsumerInit
(
void
);
392
}
393
394
#endif
// RTC_OUTPORTCORBACDRCONSUMER_H
ConnectorBase.h
Connector base class
ConnectorListener.h
connector listener class
CorbaConsumer.h
CORBA Consumer class
OutPortConsumer.h
OutPortConsumer class
OutPortCorbaCdrConsumerInit
void OutPortCorbaCdrConsumerInit(void)
モジュール初期化関数
RTC::ByteData
シリアライズ後のバイト列を操作するクラス
Definition
ByteData.h:30
RTC::ConnectorInfo
ConnectorInfo クラス
Definition
ConnectorBase.h:50
RTC::ConnectorListenersBase
Definition
ConnectorListener.h:1354
RTC::ConnectorListenersBase::notifyIn
virtual::RTC::ConnectorListenerStatus::Enum notifyIn(ConnectorDataListenerType type, ConnectorInfo &info, ByteData &data)=0
リスナーへ通知する(InPort側) 指定の種類のリスナのコールバックメソッドを呼び出す。 InPortとOutPortでシリアライザの種類が違う場合があるため、 InPort側ではnotifyOut関...
RTC::CorbaConsumer< ::OpenRTM::OutPortCdr >::CorbaConsumer
CorbaConsumer()
RTC::Logger
Logger クラス
Definition
SystemLogger.h:101
RTC::OutPortConsumer
OutPortConsumer 抽象クラス
Definition
OutPortConsumer.h:173
RTC::OutPortCorbaCdrConsumer::rtclog
Logger rtclog
ロガーストリーム
Definition
OutPortCorbaCdrConsumer.h:267
RTC::OutPortCorbaCdrConsumer::setListener
void setListener(ConnectorInfo &info, ConnectorListenersBase *listeners) override
リスナを設定する。
RTC::OutPortCorbaCdrConsumer::get
DataPortStatus get(ByteData &data) override
データを読み出す
RTC::OutPortCorbaCdrConsumer::init
void init(coil::Properties &prop) override
設定初期化
RTC::OutPortCorbaCdrConsumer::~OutPortCorbaCdrConsumer
~OutPortCorbaCdrConsumer() override
デストラクタ
RTC::OutPortCorbaCdrConsumer::setBuffer
void setBuffer(CdrBufferBase *buffer) override
バッファをセットする
RTC::OutPortCorbaCdrConsumer::unsubscribeInterface
void unsubscribeInterface(const SDOPackage::NVList &properties) override
データ受信通知からの登録解除
RTC::OutPortCorbaCdrConsumer::subscribeInterface
bool subscribeInterface(const SDOPackage::NVList &properties) override
データ受信通知への登録
RTC::OutPortCorbaCdrConsumer::OutPortCorbaCdrConsumer
OutPortCorbaCdrConsumer()
コンストラクタ
RTC
RTコンポーネント
RTC::ConnectorDataListenerType::ON_RECEIVER_FULL
@ ON_RECEIVER_FULL
Definition
ConnectorListener.h:152
RTC::ConnectorDataListenerType::ON_RECEIVED
@ ON_RECEIVED
Definition
ConnectorListener.h:151
RTC::ConnectorDataListenerType::ON_BUFFER_WRITE
@ ON_BUFFER_WRITE
Definition
ConnectorListener.h:145
RTC::ConnectorDataListenerType::ON_BUFFER_FULL
@ ON_BUFFER_FULL
Definition
ConnectorListener.h:146
RTC::CdrBufferBase
BufferBase< ByteData > CdrBufferBase
Definition
CdrBufferBase.h:31
RTC::DataPortStatus
DataPortStatus
Definition
DataPortStatus.h:114
RTC::ConnectorListenerType::ON_SENDER_EMPTY
@ ON_SENDER_EMPTY
Definition
ConnectorListener.h:673
RTC::ConnectorListenerType::ON_SENDER_ERROR
@ ON_SENDER_ERROR
Definition
ConnectorListener.h:675
RTC::ConnectorListenerType::ON_SENDER_TIMEOUT
@ ON_SENDER_TIMEOUT
Definition
ConnectorListener.h:674
構築:
1.17.0