メインページ | ネームスペース一覧 | クラス階層 | 構成 | ファイル一覧 | ネームスペースメンバ | 構成メンバ | ファイルメンバ

クラス RTM::SubscriberBase

Subscriber 基底クラス. [詳細]

#include <RtcSubscriber.h>

RTM::SubscriberBaseに対する継承グラフ

RTM::SubscriberNew RTM::SubscriberNewPeriodic RTM::SubscriberOnce RTM::SubscriberPeriodic RTM::SubscriberPeriodicNew RTM::SubscriberPeriodicTriggerd RTM::SubscriberTriggerd RTM::SubscriberTriggerdPeriodic すべてのメンバ一覧

Public メソッド

 SubscriberBase (OutPortBase *parent, InPort_ptr inport, const SubscriptionID id, SubscriberProfile profile)
 SubscriberBase クラスコンストラクタ.

 ~SubscriberBase ()
 SubscriberBase クラスデストラクタ。.

virtual int open (void *args)
 SubscriberBase サービスを開始する。.

virtual int close (unsigned long flags)
 SubscriberBase サービスを停止する。.

virtual int svc (void)=0
 SubscriberBase サービスの本体 (純粋仮想関数)。.

virtual bool update ()=0
 Subscriber へのデータ更新を行う (純粋想関数)。.

virtual void release ()
 Subscriber サービスを終了する。.

virtual SubscriberProfile get_profile ()
 SubscriberProfile を得る。.

virtual InPort_ptr get_inport ()
 Subscribe している InPort のオブジェクトリファレンスを得る。.

virtual std::string get_id ()
 SubscSubscribe している InPort のオブジェクトリファレンスを得る。.

bool is_running ()
 スレッドが走っているかどうかを判定する。

virtual void stop_thread ()
 スレッドを停止させる。実際にはメンバ変数 m_Running を false に セットする。停止処理はユーザが責任を持たなければならない。


Protected 変数

SubscriberProfile m_Profile
 Request type. once or periodic.

InPort_ptr m_pInPort
 Input port object reference.

OutPortBasem_pParent
 Parent outport object reference.

std::string m_Id
 Subscription ID.

bool m_Running
 Thread activity flag (true=running, false=stop).

NewData m_NewData

説明

Subscriber 基底クラス.

Subscriber* の基底クラス SubscriberBase. 各種 Subscriber はこのクラスを継承して詳細を実装する。


コンストラクタとデストラクタ

RTM::SubscriberBase::SubscriberBase OutPortBase parent,
InPort_ptr  inport,
const SubscriptionID  id,
SubscriberProfile  profile
 

SubscriberBase クラスコンストラクタ.

引数:
parent Subscriber* をインスタンス化するOutPortのポインタ。
inport Subscriber する InPort のオブジェクトリファレンス。
id SubscriptionID。ユニークなUUID。
profile Subscription のプロファイル。

RTM::SubscriberBase::~SubscriberBase  ) 
 

SubscriberBase クラスデストラクタ。.


関数

virtual int RTM::SubscriberBase::close unsigned long  flags  )  [virtual]
 

SubscriberBase サービスを停止する。.

virtual std::string RTM::SubscriberBase::get_id  )  [virtual]
 

SubscSubscribe している InPort のオブジェクトリファレンスを得る。.

virtual InPort_ptr RTM::SubscriberBase::get_inport  )  [virtual]
 

Subscribe している InPort のオブジェクトリファレンスを得る。.

virtual SubscriberProfile RTM::SubscriberBase::get_profile  )  [virtual]
 

SubscriberProfile を得る。.

bool RTM::SubscriberBase::is_running  )  [inline]
 

スレッドが走っているかどうかを判定する。

virtual int RTM::SubscriberBase::open void *  args  )  [virtual]
 

SubscriberBase サービスを開始する。.

virtual void RTM::SubscriberBase::release  )  [virtual]
 

Subscriber サービスを終了する。.

virtual void RTM::SubscriberBase::stop_thread  )  [virtual]
 

スレッドを停止させる。実際にはメンバ変数 m_Running を false に セットする。停止処理はユーザが責任を持たなければならない。

virtual int RTM::SubscriberBase::svc void   )  [pure virtual]
 

SubscriberBase サービスの本体 (純粋仮想関数)。.

RTM::SubscriberOnce, RTM::SubscriberPeriodic, RTM::SubscriberNew, RTM::SubscriberTriggerd, RTM::SubscriberPeriodicNew, RTM::SubscriberNewPeriodic, RTM::SubscriberPeriodicTriggerd, と RTM::SubscriberTriggerdPeriodicを実装しています.

virtual bool RTM::SubscriberBase::update  )  [pure virtual]
 

Subscriber へのデータ更新を行う (純粋想関数)。.

RTM::SubscriberOnce, RTM::SubscriberPeriodic, RTM::SubscriberNew, RTM::SubscriberTriggerd, RTM::SubscriberPeriodicNew, RTM::SubscriberNewPeriodic, RTM::SubscriberPeriodicTriggerd, と RTM::SubscriberTriggerdPeriodicを実装しています.


変数

std::string RTM::SubscriberBase::m_Id [protected]
 

Subscription ID.

NewData RTM::SubscriberBase::m_NewData [protected]
 

InPort_ptr RTM::SubscriberBase::m_pInPort [protected]
 

Input port object reference.

OutPortBase* RTM::SubscriberBase::m_pParent [protected]
 

Parent outport object reference.

SubscriberProfile RTM::SubscriberBase::m_Profile [protected]
 

Request type. once or periodic.

bool RTM::SubscriberBase::m_Running [protected]
 

Thread activity flag (true=running, false=stop).


このクラスの説明は次のファイルから生成されました:
OpenRTMに対してMon May 23 03:13:44 2005に生成されました。 doxygen 1.3.6