OpenRTM-aist 2.0.2
|
InPortConnector 基底クラス [詳解]
#include <InPortConnector.h>
公開メンバ関数 | |
InPortConnector (ConnectorInfo &info, ConnectorListenersBase *listeners, CdrBufferBase *buffer) | |
コンストラクタ | |
~InPortConnector () override | |
デストラクタ | |
const ConnectorInfo & | profile () override |
ConnectorInfo 取得 | |
const char * | id () override |
Connector ID 取得 | |
const char * | name () override |
Connector 名取得 | |
DataPortStatus | disconnect () override=0 |
接続解除関数 | |
CdrBufferBase * | getBuffer () override |
Buffer を取得する | |
virtual DataPortStatus | read (ByteDataStreamBase *data)=0 |
read 関数 | |
template<class DataType > | |
DataPortStatus | read (DataType &data) |
データ型の変換テンプレート | |
virtual void | setEndian (bool endian_type) |
endianタイプ設定 | |
virtual bool | isLittleEndian () |
endian 設定を返す | |
virtual BufferStatus | write (ByteData &cdr) |
bool | setOutPort (OutPortBase *directOutPort) |
データをダイレクトに書き込むためのOutPortのサーバントを設定する | |
template<typename DataType > | |
bool | getDirectData (DataType &data) |
ダイレクト接続時に変数渡しでデータを取得する | |
virtual void | unsubscribeInterface (const coil::Properties &prop) |
コンシューマのインターフェースの登録を取り消す | |
![]() | |
virtual | ~ConnectorBase ()=default |
デストラクタ | |
virtual void | activate ()=0 |
アクティブ化 | |
virtual void | deactivate ()=0 |
非アクティブ化 | |
限定公開変数類 | |
Logger | rtclog |
ロガーストリーム | |
ConnectorInfo | m_profile |
ConnectorInfo | |
ConnectorListenersBase * | m_listeners |
ConnectorListenrs への参照 | |
CdrBufferBase * | m_buffer |
Connector が保持している Buffer | |
bool | m_littleEndian |
接続エンディアン | |
ConnectorListenersBase * | m_outPortListeners |
OutPort 側の ConnectorListenrs への参照 | |
PortBase * | m_directOutPort |
同一プロセス上のピアOutPortのポインタ | |
std::string | m_marshaling_type |
シリアライザの名前 | |
ByteDataStreamBase * | m_cdr |
シリアライザへの参照 | |
RTC::InPortConnector::InPortConnector | ( | ConnectorInfo & | info, |
ConnectorListenersBase * | listeners, | ||
CdrBufferBase * | buffer ) |
コンストラクタ
info | 接続情報を含む ConnectorInfo オブジェクト |
buffer | このコネクタのバッファへのポインタ |
|
override |
デストラクタ
|
overridepure virtual |
接続解除関数
Connector が保持している接続を解除する
RTC::ConnectorBaseを実装しています。
RTC::InPortPullConnector, RTC::InPortPushConnectorで実装されています。
|
overridevirtual |
|
inline |
ダイレクト接続時に変数渡しでデータを取得する
data | 格納先のデータ |
参照先 RTC::PortBase::getDirectPort(), RTC::DirectOutPortBase< DataType >::isEmpty(), m_directOutPort, m_listeners, m_outPortListeners, m_profile, RTC::ConnectorListenersBase::notify(), RTC::ConnectorListenersBase::notifyIn(), RTC::ConnectorListenersBase::notifyOut(), RTC::ON_BUFFER_EMPTY, RTC::ON_BUFFER_READ, RTC::ON_RECEIVED, RTC::ON_SEND, RTC::ON_SENDER_EMPTY, RTC::DirectOutPortBase< DataType >::read(), RTC_PARANOID, RTC_TRACE (計17項目).
|
overridevirtual |
|
virtual |
endian 設定を返す
このコネクタに設定されたエンディアンが little endian かどうか。
参照元 read().
|
overridevirtual |
|
overridevirtual |
|
pure virtual |
read 関数
Buffer からデータを InPort へ read する関数
data | このコネクタから読み出されるデータを格納する変数への参照 |
RTC::InPortPullConnector, RTC::InPortPushConnectorで実装されています。
|
inline |
データ型の変換テンプレート
data | データを格納する変数 |
参照先 RTC::createSerializer(), RTC::ByteDataStream< DataType >::deserialize(), RTC::ByteDataStreamBase::isLittleEndian(), isLittleEndian(), m_cdr, m_marshaling_type, RTC::PORT_ERROR, RTC::PORT_OK, read(), RTC_ERROR.
|
virtual |
endianタイプ設定
endianタイプを設定する
endian_type | true: little, false: big |
bool RTC::InPortConnector::setOutPort | ( | OutPortBase * | directOutPort | ) |
データをダイレクトに書き込むためのOutPortのサーバントを設定する
directOutPort | OutPortのサーバント |
|
virtual |
|
virtual |
RTC::InPortPushConnectorで再実装されています。
|
protected |
Connector が保持している Buffer
|
protected |
シリアライザへの参照
参照元 read().
|
protected |
同一プロセス上のピアOutPortのポインタ
参照元 getDirectData().
|
protected |
ConnectorListenrs への参照
参照元 getDirectData().
|
protected |
接続エンディアン
|
protected |
シリアライザの名前
参照元 read().
|
protected |
OutPort 側の ConnectorListenrs への参照
参照元 getDirectData().
|
protected |
|
protected |
ロガーストリーム