OpenRTM-aist 2.1.0
|
ConnectorDataListener ホルダクラス [詳解]
#include <ConnectorListener.h>
公開メンバ関数 | |
ConnectorDataListenerHolder () | |
コンストラクタ | |
virtual | ~ConnectorDataListenerHolder () |
デストラクタ | |
void | addListener (ConnectorDataListener *listener, bool autoclean) |
リスナーの追加 | |
void | removeListener (ConnectorDataListener *listener) |
リスナーの削除 | |
size_t | size () |
リスナーの数を得る | |
virtual ReturnCode | notify (ConnectorInfo &info, ByteData &cdrdata, const std::string &marshalingtype) |
リスナーへ通知する | |
virtual ReturnCode | notifyIn (ConnectorInfo &info, ByteData &data) |
virtual ReturnCode | notifyOut (ConnectorInfo &info, ByteData &data) |
template<class DataType > | |
ReturnCode | notifyIn (ConnectorInfo &info, DataType &typeddata) |
リスナーへ通知する(データ型指定版、InPort側) 登録されているリスナのコールバックメソッドを呼び出す。 InPortとOutPortでシリアライザの種類が違う場合があるため、 InPort側ではnotifyIn関数を使用する必要がある。 | |
template<class DataType > | |
ReturnCode | notifyOut (ConnectorInfo &info, DataType &typeddata) |
リスナーへ通知する(データ型指定版、OutPort側) 登録されているリスナのコールバックメソッドを呼び出す。 InPortとOutPortでシリアライザの種類が違う場合があるため、 InPort側ではnotifyOut関数を使用する必要がある。 | |
template<class DataType > | |
ReturnCode | notify (ConnectorInfo &info, DataType &typeddata, const std::string &marshalingtype) |
リスナーへ通知する(データ型指定版) | |
公開変数類 | |
USE_CONNLISTENER_STATUS | |
限定公開変数類 | |
std::vector< Entry > | m_listeners |
std::mutex | m_mutex |
ByteDataStreamBase * | m_cdr { nullptr } |
std::string | m_marshalingtype |
その他の継承メンバ | |
![]() | |
enum | Enum { NO_CHANGE = 0 , INFO_CHANGED = 1 << 0 , DATA_CHANGED = 1 << 1 , BOTH_CHANGED = INFO_CHANGED | DATA_CHANGED } |
ConnectorDataListener ホルダクラス
複数の ConnectorDataListener を保持し管理するクラス。
RTC::ConnectorDataListenerHolder::ConnectorDataListenerHolder | ( | ) |
コンストラクタ
|
virtual |
デストラクタ
void RTC::ConnectorDataListenerHolder::addListener | ( | ConnectorDataListener * | listener, |
bool | autoclean | ||
) |
リスナーの追加
リスナーを追加する。
listener | 追加するリスナ |
autoclean | true:デストラクタで削除する, false:デストラクタで削除しない |
|
virtual |
リスナーへ通知する
登録されているリスナのコールバックメソッドを呼び出す。
info | ConnectorInfo |
cdrdata | データ |
RTC::ConnectorDataListenerHolderT< DataType >で再実装されています。
参照元 notifyIn(), notifyOut().
|
inline |
リスナーへ通知する(データ型指定版)
登録されているリスナのコールバックメソッドを呼び出す。 ConnectorDataListenerT 型のコールバックのみコールされる。
info | ConnectorInfo |
typeddata | データ(データ型指定あり) |
marshalingtype | シリアライザの種類 |
参照先 RTC::ByteDataStreamBase::isLittleEndian(), m_cdr, m_listeners, m_marshalingtype, m_mutex, RTC::ConnectorListenerStatus::NO_CHANGE, RTC::ConnectorInfo::properties, RTC::ByteDataStream< DataType >::serialize().
|
virtual |
|
inline |
リスナーへ通知する(データ型指定版、InPort側) 登録されているリスナのコールバックメソッドを呼び出す。 InPortとOutPortでシリアライザの種類が違う場合があるため、 InPort側ではnotifyIn関数を使用する必要がある。
info | ConnectorInfo |
typeddata | データ(データ型指定あり) |
|
virtual |
|
inline |
リスナーへ通知する(データ型指定版、OutPort側) 登録されているリスナのコールバックメソッドを呼び出す。 InPortとOutPortでシリアライザの種類が違う場合があるため、 InPort側ではnotifyOut関数を使用する必要がある。
info | ConnectorInfo |
typeddata | データ(データ型指定あり) |
void RTC::ConnectorDataListenerHolder::removeListener | ( | ConnectorDataListener * | listener | ) |
リスナーの削除
リスナを削除する。
listener | 削除するリスナ |
size_t RTC::ConnectorDataListenerHolder::size | ( | ) |
リスナーの数を得る
現在登録されているリスナー数を得る。
|
protected |
|
protected |
|
protected |
|
protected |
RTC::ConnectorDataListenerHolder::USE_CONNLISTENER_STATUS |