#include <PublisherPeriodic.h>
Public 型 | |
typedef coil::Mutex | Mutex |
typedef coil::Condition < Mutex > | Condition |
typedef coil::Guard < coil::Mutex > | Guard |
Public メソッド | |
DATAPORTSTATUS_ENUM | PublisherPeriodic () |
コンストラクタ | |
virtual | ~PublisherPeriodic (void) |
デストラクタ | |
virtual ReturnCode | init (coil::Properties &prop) |
初期化 | |
virtual ReturnCode | setConsumer (InPortConsumer *consumer) |
virtual ReturnCode | setBuffer (CdrBufferBase *buffer) |
virtual ReturnCode | write (const cdrMemoryStream &data, unsigned long sec, unsigned long usec) |
virtual bool | isActive () |
virtual ReturnCode | activate () |
virtual ReturnCode | deactivate () |
virtual int | svc (void) |
スレッド実行関数 | |
Protected 型 | |
enum | Policy { ALL, FIFO, SKIP, NEW } |
Protected メソッド | |
ReturnCode | pushAll () |
push "all" policy | |
ReturnCode | pushFifo () |
push "fifo" policy | |
ReturnCode | pushSkip () |
push "skip" policy | |
ReturnCode | pushNew () |
push "new" policy | |
ReturnCode | convertReturn (BufferStatus::Enum status) |
一定周期でコンシューマの送出処理を呼び出す Publisher 定期的にデータ送信を実行する場合に使用する。
typedef coil::Mutex RTC::PublisherPeriodic::Mutex |
typedef coil::Condition<Mutex> RTC::PublisherPeriodic::Condition |
typedef coil::Guard<coil::Mutex> RTC::PublisherPeriodic::Guard |
enum RTC::PublisherPeriodic::Policy [protected] |
DATAPORTSTATUS_ENUM RTC::PublisherPeriodic::PublisherPeriodic | ( | ) |
コンストラクタ
コンストラクタ 送出処理の呼び出し間隔を、Propertyオブジェクトのdataport.push_rateメンバ に設定しておく必要がある。送出間隔は、Hz単位の浮動小数文字列で指定。 たとえば、1000.0Hzの場合は、「1000.0」を設定。 上記プロパティが未設定の場合は、「1000Hz」を設定。
consumer | データ送出を待つコンシューマ | |
property | 本Publisherの駆動制御情報を設定したPropertyオブジェクト |
virtual RTC::PublisherPeriodic::~PublisherPeriodic | ( | void | ) | [virtual] |
デストラクタ
デストラクタ
virtual ReturnCode RTC::PublisherPeriodic::init | ( | coil::Properties & | prop | ) | [virtual] |
virtual ReturnCode RTC::PublisherPeriodic::setConsumer | ( | InPortConsumer * | consumer | ) | [virtual] |
RTC::PublisherBaseを実装しています。
virtual ReturnCode RTC::PublisherPeriodic::setBuffer | ( | CdrBufferBase * | buffer | ) | [virtual] |
RTC::PublisherBaseを実装しています。
virtual ReturnCode RTC::PublisherPeriodic::write | ( | const cdrMemoryStream & | data, | |
unsigned long | sec, | |||
unsigned long | usec | |||
) | [virtual] |
RTC::PublisherBaseを実装しています。
virtual bool RTC::PublisherPeriodic::isActive | ( | ) | [virtual] |
RTC::PublisherBaseを実装しています。
virtual ReturnCode RTC::PublisherPeriodic::activate | ( | ) | [virtual] |
RTC::PublisherBaseを実装しています。
virtual ReturnCode RTC::PublisherPeriodic::deactivate | ( | ) | [virtual] |
RTC::PublisherBaseを実装しています。
virtual int RTC::PublisherPeriodic::svc | ( | void | ) | [virtual] |
スレッド実行関数
ACE_Task::svc() のオーバーライド
ReturnCode RTC::PublisherPeriodic::pushAll | ( | ) | [protected] |
push "all" policy
ReturnCode RTC::PublisherPeriodic::pushFifo | ( | ) | [protected] |
push "fifo" policy
ReturnCode RTC::PublisherPeriodic::pushSkip | ( | ) | [protected] |
push "skip" policy
ReturnCode RTC::PublisherPeriodic::pushNew | ( | ) | [protected] |
push "new" policy
ReturnCode RTC::PublisherPeriodic::convertReturn | ( | BufferStatus::Enum | status | ) | [protected] |