OpenRTM-aist 2.0.2
読み取り中…
検索中…
一致する文字列を見つけられません
RTC::InPortConnector クラスabstract

InPortConnector 基底クラス [詳解]

#include <InPortConnector.h>

RTC::InPortConnector の継承関係図
RTC::InPortConnector 連携図

公開メンバ関数

 InPortConnector (ConnectorInfo &info, ConnectorListenersBase *listeners, CdrBufferBase *buffer)
 コンストラクタ
 
 ~InPortConnector () override
 デストラクタ
 
const ConnectorInfoprofile () override
 ConnectorInfo 取得
 
const char * id () override
 Connector ID 取得
 
const char * name () override
 Connector 名取得
 
DataPortStatus disconnect () override=0
 接続解除関数
 
CdrBufferBasegetBuffer () 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)
 コンシューマのインターフェースの登録を取り消す
 
- 基底クラス RTC::ConnectorBase に属する継承公開メンバ関数
virtual ~ConnectorBase ()=default
 デストラクタ
 
virtual void activate ()=0
 アクティブ化
 
virtual void deactivate ()=0
 非アクティブ化
 

限定公開変数類

Logger rtclog
 ロガーストリーム
 
ConnectorInfo m_profile
 ConnectorInfo
 
ConnectorListenersBasem_listeners
 ConnectorListenrs への参照
 
CdrBufferBasem_buffer
 Connector が保持している Buffer
 
bool m_littleEndian
 接続エンディアン
 
ConnectorListenersBasem_outPortListeners
 OutPort 側の ConnectorListenrs への参照
 
PortBasem_directOutPort
 同一プロセス上のピアOutPortのポインタ
 
std::string m_marshaling_type
 シリアライザの名前
 
ByteDataStreamBasem_cdr
 シリアライザへの参照
 

詳解

InPortConnector 基底クラス

InPort の Push/Pull 各種 Connector を派生させるための基底クラス。

から
1.0.0

構築子と解体子

◆ InPortConnector()

RTC::InPortConnector::InPortConnector ( ConnectorInfo & info,
ConnectorListenersBase * listeners,
CdrBufferBase * buffer )

コンストラクタ

引数
info接続情報を含む ConnectorInfo オブジェクト
bufferこのコネクタのバッファへのポインタ

◆ ~InPortConnector()

RTC::InPortConnector::~InPortConnector ( )
override

デストラクタ

関数詳解

◆ disconnect()

DataPortStatus RTC::InPortConnector::disconnect ( )
overridepure virtual

接続解除関数

Connector が保持している接続を解除する

戻り値
ReturnCode

RTC::ConnectorBaseを実装しています。

RTC::InPortPullConnector, RTC::InPortPushConnectorで実装されています。

◆ getBuffer()

CdrBufferBase * RTC::InPortConnector::getBuffer ( )
overridevirtual

Buffer を取得する

Connector が保持している Buffer を返す

戻り値
このコネクタが保持するバッファへのポインタ

RTC::ConnectorBaseを実装しています。

◆ getDirectData()

template<typename DataType >
bool RTC::InPortConnector::getDirectData ( DataType & data)
inline

◆ id()

const char * RTC::InPortConnector::id ( )
overridevirtual

Connector ID 取得

Connector ID を取得する

戻り値
コネクタ ID 文字列へのポインタ

RTC::ConnectorBaseを実装しています。

◆ isLittleEndian()

virtual bool RTC::InPortConnector::isLittleEndian ( )
virtual

endian 設定を返す

このコネクタに設定されたエンディアンが little endian かどうか。

戻り値
true: little endian, false: big endian

参照元 read().

◆ name()

const char * RTC::InPortConnector::name ( )
overridevirtual

Connector 名取得

Connector 名を取得する

戻り値
コネクタ名文字列へのポインタ

RTC::ConnectorBaseを実装しています。

◆ profile()

const ConnectorInfo & RTC::InPortConnector::profile ( )
overridevirtual

ConnectorInfo 取得

Connector ConnectorInfo を取得する

戻り値
このコネクタが保持する ConnectorInfo オブジェクト

RTC::ConnectorBaseを実装しています。

◆ read() [1/2]

virtual DataPortStatus RTC::InPortConnector::read ( ByteDataStreamBase * data)
pure virtual

read 関数

Buffer からデータを InPort へ read する関数

引数
dataこのコネクタから読み出されるデータを格納する変数への参照
戻り値
ReturnCode

RTC::InPortPullConnector, RTC::InPortPushConnectorで実装されています。

参照元 RTC::InPort< DataType >::read(), read().

◆ read() [2/2]

template<class DataType >
DataPortStatus RTC::InPortConnector::read ( DataType & data)
inline

データ型の変換テンプレート

引数
dataデータを格納する変数
戻り値
ReturnCode

参照先 RTC::createSerializer(), RTC::ByteDataStream< DataType >::deserialize(), RTC::ByteDataStreamBase::isLittleEndian(), isLittleEndian(), m_cdr, m_marshaling_type, RTC::PORT_ERROR, RTC::PORT_OK, read(), RTC_ERROR.

◆ setEndian()

virtual void RTC::InPortConnector::setEndian ( bool endian_type)
virtual

endianタイプ設定

endianタイプを設定する

引数
endian_typetrue: little, false: big

◆ setOutPort()

bool RTC::InPortConnector::setOutPort ( OutPortBase * directOutPort)

データをダイレクトに書き込むためのOutPortのサーバントを設定する

引数
directOutPortOutPortのサーバント
戻り値
True: 設定に成功 False: 既に設定済みのため失敗

◆ unsubscribeInterface()

virtual void RTC::InPortConnector::unsubscribeInterface ( const coil::Properties & prop)
virtual

コンシューマのインターフェースの登録を取り消す

引数
propコネクタプロファイルのプロパティ

RTC::InPortPullConnectorで再実装されています。

◆ write()

virtual BufferStatus RTC::InPortConnector::write ( ByteData & cdr)
virtual

RTC::InPortPushConnectorで再実装されています。

メンバ詳解

◆ m_buffer

CdrBufferBase* RTC::InPortConnector::m_buffer
protected

Connector が保持している Buffer

◆ m_cdr

ByteDataStreamBase* RTC::InPortConnector::m_cdr
protected

シリアライザへの参照

参照元 read().

◆ m_directOutPort

PortBase* RTC::InPortConnector::m_directOutPort
protected

同一プロセス上のピアOutPortのポインタ

参照元 getDirectData().

◆ m_listeners

ConnectorListenersBase* RTC::InPortConnector::m_listeners
protected

ConnectorListenrs への参照

参照元 getDirectData().

◆ m_littleEndian

bool RTC::InPortConnector::m_littleEndian
protected

接続エンディアン

◆ m_marshaling_type

std::string RTC::InPortConnector::m_marshaling_type
protected

シリアライザの名前

参照元 read().

◆ m_outPortListeners

ConnectorListenersBase* RTC::InPortConnector::m_outPortListeners
protected

OutPort 側の ConnectorListenrs への参照

参照元 getDirectData().

◆ m_profile

◆ rtclog

Logger RTC::InPortConnector::rtclog
protected

ロガーストリーム


このクラス詳解は次のファイルから抽出されました: