#include <PublisherNew.h>
Public メソッド | |
PublisherNew (InPortConsumer *consumer, const Properties &property) | |
コンストラクタ | |
virtual | ~PublisherNew () |
デストラクタ | |
virtual void | update () |
Observer関数 | |
virtual int | svc (void) |
スレッド実行関数 | |
virtual int | open (void *args) |
タスク開始 | |
virtual void | release () |
タスク終了関数 | |
構成 | |
struct | NewData |
バッファ内に新規データが格納されたタイミングで、その新規データを送信する。 データ送出タイミングを待つコンシューマを、送出する側とは異なるスレッドで 動作させる場合に使用。 Publisherの駆動は、データ送出のタイミングになるまでブロックされ、 送出タイミングの通知を受けると、即座にコンシューマの送出処理を呼び出す。
RTC::PublisherNew::PublisherNew | ( | InPortConsumer * | consumer, | |
const Properties & | property | |||
) |
コンストラクタ
コンストラクタ 本 Publisher 用新規スレッドを生成する。
consumer | データ送出を待つコンシューマ | |
property | 本Publisherの駆動制御情報を設定したPropertyオブジェクト (本Publisherでは未使用) |
virtual RTC::PublisherNew::~PublisherNew | ( | ) | [virtual] |
デストラクタ
デストラクタ
virtual void RTC::PublisherNew::update | ( | ) | [virtual] |
Observer関数
送出タイミング時に呼び出す。 ブロックしている当該Publisherの駆動が開始され、コンシューマへの送出処理が 行われる。
RTC::PublisherBaseを実装しています。
virtual int RTC::PublisherNew::svc | ( | void | ) | [virtual] |
スレッド実行関数
ACE_Task::svc() のオーバーライド バッファ内のデータが更新されるまでスレッドを待機させる。
virtual int RTC::PublisherNew::open | ( | void * | args | ) | [virtual] |
タスク開始
ACE_Task::open() のオーバーライド 本 publisher 用新規スレッドを生成する。
args | スレッド生成用引数(本Publisherでは未使用) |
virtual void RTC::PublisherNew::release | ( | ) | [virtual] |
タスク終了関数
ACE_Task::release() のオーバーライド 駆動フラグをfalseに設定し、本 Publisher の駆動を停止する。 ただし、駆動スレッドがブロックされている場合には、 最大1回コンシューマの送出処理が呼び出される場合がある。
RTC::PublisherBaseを再定義しています。