OpenRTM-aist 2.1.0
|
#include <PublisherPeriodic.h>
公開メンバ関数 | |
PublisherPeriodic () | |
コンストラクタ | |
~PublisherPeriodic () override | |
デストラクタ | |
DataPortStatus | init (coil::Properties &prop) override |
初期化 | |
DataPortStatus | setConsumer (InPortConsumer *consumer) override |
InPortコンシューマのセット | |
DataPortStatus | setBuffer (CdrBufferBase *buffer) override |
バッファのセット | |
DataPortStatus | setListener (ConnectorInfo &info, ConnectorListenersBase *listeners) override |
リスナを設定する。 | |
DataPortStatus | write (ByteDataStreamBase *data, std::chrono::nanoseconds timeout) override |
データを書き込む | |
bool | isActive () override |
アクティブ化確認 | |
DataPortStatus | activate () override |
アクティブ化する | |
DataPortStatus | deactivate () override |
非アクティブ化する | |
virtual int | svc () |
スレッド実行関数 | |
![]() | |
virtual | ~PublisherBase ()=default |
デストラクタ | |
virtual DataPortStatus | setBuffer (BufferBase< ByteData > *buffer)=0 |
バッファのセット | |
virtual void | release () |
Publisher を破棄する。 | |
限定公開型 | |
enum | Policy { PUBLISHER_POLICY_ALL , PUBLISHER_POLICY_FIFO , PUBLISHER_POLICY_SKIP , PUBLISHER_POLICY_NEW } |
限定公開メンバ関数 | |
void | setPushPolicy (const coil::Properties &prop) |
PushPolicy の設定 | |
bool | createTask (const coil::Properties &prop) |
Task の設定 | |
DataPortStatus | pushAll () |
push "all" policy | |
DataPortStatus | pushFifo () |
push "fifo" policy | |
DataPortStatus | pushSkip () |
push "skip" policy | |
DataPortStatus | pushNew () |
push "new" policy | |
DataPortStatus | convertReturn (BufferStatus status, ByteData &data) |
BufferStatus から DataPortStatus への変換 | |
DataPortStatus | invokeListener (DataPortStatus status, ByteData &data) |
DataPortStatusに従ってリスナへ通知する関数を呼び出す。 | |
void | onBufferWrite (ByteData &data) |
ON_BUFFER_WRITEのリスナへ通知する。 | |
void | onBufferFull (ByteData &data) |
ON_BUFFER_FULLリスナへイベントを通知する。 | |
void | onBufferWriteTimeout (ByteData &data) |
ON_BUFFER_WRITE_TIMEOUTのリスナへ通知する。 | |
void | onBufferRead (ByteData &data) |
ON_BUFFER_READのリスナへ通知する。 | |
void | onSend (ByteData &data) |
ON_SENDのリスナへ通知する。 | |
void | onReceived (ByteData &data) |
ON_RECEIVEDのリスナへ通知する。 | |
void | onReceiverFull (ByteData &data) |
ON_RECEIVER_FULLのリスナへ通知する。 | |
void | onReceiverTimeout (ByteData &data) |
ON_RECEIVER_TIMEOUTのリスナへ通知する。 | |
void | onReceiverError (ByteData &data) |
ON_RECEIVER_ERRORのリスナへ通知する。 | |
void | onBufferEmpty () |
ON_BUFFER_EMPTYのリスナへ通知する。 | |
void | onSenderEmpty () |
ON_SENDER_EMPTYのリスナへ通知する。 | |
void | onSenderError () |
ON_SENDER_ERRORのリスナへ通知する。 | |
周期的にデータを送信するための Publisher クラス。このクラスは、通 常 Connector 内にあって、バッファおよびコンシューマに関連付けられ る。一定周期ごとにバッファからデータを取り出しコンシューマに対して データを送出する。
|
protected |
RTC::PublisherPeriodic::PublisherPeriodic | ( | ) |
コンストラクタ
|
override |
デストラクタ
|
overridevirtual |
アクティブ化する
RTC::PublisherBaseを実装しています。
|
protected |
BufferStatus から DataPortStatus への変換
|
protected |
Task の設定
|
overridevirtual |
非アクティブ化する
RTC::PublisherBaseを実装しています。
|
overridevirtual |
初期化
RTC::PublisherBaseを実装しています。
|
protected |
DataPortStatusに従ってリスナへ通知する関数を呼び出す。
|
overridevirtual |
アクティブ化確認
Publisher はデータポートと同期して activate/deactivate される。 activate() / deactivate() 関数によって、アクティブ状態と非アクティ ブ状態が切り替わる。この関数により、現在アクティブ状態か、非アク ティブ状態かを確認することができる。
RTC::PublisherBaseを実装しています。
|
inlineprotected |
ON_BUFFER_EMPTYのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notify(), RTC::ON_BUFFER_EMPTY.
|
inlineprotected |
ON_BUFFER_FULLリスナへイベントを通知する。
参照先 RTC::ConnectorListenersBase::notifyOut(), RTC::ON_BUFFER_FULL.
|
inlineprotected |
ON_BUFFER_READのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notifyOut(), RTC::ON_BUFFER_READ.
|
inlineprotected |
ON_BUFFER_WRITEのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notifyOut(), RTC::ON_BUFFER_WRITE.
|
inlineprotected |
ON_BUFFER_WRITE_TIMEOUTのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notifyOut(), RTC::ON_BUFFER_WRITE_TIMEOUT.
|
inlineprotected |
ON_RECEIVEDのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notifyOut(), RTC::ON_RECEIVED.
|
inlineprotected |
ON_RECEIVER_ERRORのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notifyOut(), RTC::ON_RECEIVER_ERROR.
|
inlineprotected |
ON_RECEIVER_FULLのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notifyOut(), RTC::ON_RECEIVER_FULL.
|
inlineprotected |
ON_RECEIVER_TIMEOUTのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notifyOut(), RTC::ON_RECEIVER_TIMEOUT.
|
inlineprotected |
ON_SENDのリスナへ通知する。
|
inlineprotected |
ON_SENDER_EMPTYのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notify(), RTC::ON_SENDER_EMPTY.
|
inlineprotected |
ON_SENDER_ERRORのリスナへ通知する。
参照先 RTC::ConnectorListenersBase::notify(), RTC::ON_SENDER_ERROR.
|
protected |
push "all" policy
|
protected |
push "fifo" policy
|
protected |
push "new" policy
|
protected |
push "skip" policy
|
override |
バッファのセット
|
overridevirtual |
InPortコンシューマのセット
RTC::PublisherBaseを実装しています。
|
overridevirtual |
リスナを設定する。
RTC::PublisherBaseを実装しています。
|
protected |
PushPolicy の設定
|
virtual |
スレッド実行関数
|
overridevirtual |
データを書き込む
RTC::PublisherBaseを実装しています。