OpenRTM  1.0.0
Public メソッド | Protected 変数 | すべてのメンバ一覧
クラス RTC::OutPortPullConnector

OutPortPullConnector クラス [詳細]

#include <OutPortPullConnector.h>

RTC::OutPortPullConnectorに対する継承グラフ
RTC::OutPortConnector RTC::ConnectorBase RTC::DataPortStatus

Public メソッド

DATAPORTSTATUS_ENUM OutPortPullConnector (ConnectorInfo info, OutPortProvider *provider, ConnectorListeners &listeners, CdrBufferBase *buffer=0)
 コンストラクタ
virtual ~OutPortPullConnector ()
 デストラクタ
virtual ReturnCode write (const cdrMemoryStream &data)
 データの書き込み
virtual ReturnCode disconnect ()
 接続解除
virtual CdrBufferBasegetBuffer ()
 Buffer を取得する
virtual void activate ()
 アクティブ化
virtual void deactivate ()
 非アクティブ化
CdrBufferBasecreateBuffer (ConnectorInfo &info)
 Bufferの生成
void onConnect ()
 接続確立時にコールバックを呼ぶ
void onDisconnect ()
 接続切断時にコールバックを呼ぶ
- Public メソッド inherited from RTC::OutPortConnector
DATAPORTSTATUS_ENUM OutPortConnector (ConnectorInfo &info)
 コンストラクタ
virtual ~OutPortConnector ()
 デストラクタ
const ConnectorInfoprofile ()
 Profile 取得
const char * id ()
 Connector ID 取得
const char * name ()
 Connector 名取得
virtual void setEndian (const bool endian_type)
 endianタイプ設定
virtual bool isLittleEndian ()
 endian 設定を返す
template<class DataType >
ReturnCode write (const DataType &data)
 データ型の変換テンプレート
- Public メソッド inherited from RTC::ConnectorBase
virtual ~ConnectorBase ()
 デストラクタ

Protected 変数

OutPortProviderm_provider
 OutPortProvider へのポインタ
ConnectorListenersm_listeners
 ConnectorListenrs への参照
CdrBufferBasem_buffer
 Buffer へのポインタ
- Protected 変数 inherited from RTC::OutPortConnector
Logger rtclog
 ロガーストリーム
ConnectorInfo m_profile
 Port の PortProfile.
bool m_littleEndian
 接続エンディアン
cdrMemoryStream m_cdr
 cdrストリーム

Additional Inherited Members

- Public 型 inherited from RTC::DataPortStatus
enum  Enum {
  PORT_OK = 0, PORT_ERROR, BUFFER_ERROR, BUFFER_FULL,
  BUFFER_EMPTY, BUFFER_TIMEOUT, SEND_FULL, SEND_TIMEOUT,
  RECV_EMPTY, RECV_TIMEOUT, INVALID_ARGS, PRECONDITION_NOT_MET,
  CONNECTION_LOST, UNKNOWN_ERROR
}
- Static Public メソッド inherited from RTC::DataPortStatus
static const char * toString (DataPortStatus::Enum status)
 DataPortStatus リターンコードを文字列に変換

説明

OutPortPullConnector クラス

OutPort の pull 型データフローのための Connector クラス。このオブ ジェクトは、接続時に dataflow_type に pull が指定された場合、 OutPort によって生成・所有され、InPortPullConnector と対になって、 データポートの pull 型のデータフローを実現する。一つの接続に対して、 一つのデータストリームを提供する唯一の Connector が対応する。 Connector は 接続時に生成される UUID 形式の ID により区別される。

OutPortPullConnector は以下の三つのオブジェクトを所有し管理する。

OutPort に書き込まれたデータは OutPortPullConnector::write() に渡 され Buffer に書き込まれる。InPortPullConnector が OutPortPullConnector からデータを読み出すことで InPort にデータが 転送される。

から
1.0.0

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

DATAPORTSTATUS_ENUM RTC::OutPortPullConnector::OutPortPullConnector ( ConnectorInfo  info,
OutPortProvider provider,
ConnectorListeners listeners,
CdrBufferBase buffer = 0 
)

コンストラクタ

OutPortPullConnector のコンストラクタはオブジェクト生成時に下記 を引数にとる。ConnectorInfo は接続情報を含み、この情報に従いバッ ファ等を生成する。OutPort インターフェースのプロバイダオブジェク トへのポインタを取り、所有権を持つので、OutPortPullConnector は OutPortProvider の解体責任を持つ。各種イベントに対するコールバッ ク機構を提供する ConnectorListeners を持ち、適切なタイミングでコー ルバックを呼び出す。データバッファがもし OutPortBase から提供さ れる場合はそのポインタを取る。

引数
infoConnectorInfo
providerOutPortProvider
listenersConnectorListeners 型のリスナオブジェクトリスト
bufferCdrBufferBase 型のバッファ
virtual RTC::OutPortPullConnector::~OutPortPullConnector ( )
virtual

デストラクタ

disconnect() が呼ばれ、provider, buffer が解体・削除される。

関数

virtual void RTC::OutPortPullConnector::activate ( )
inlinevirtual

アクティブ化

このコネクタをアクティブ化する

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

CdrBufferBase* RTC::OutPortPullConnector::createBuffer ( ConnectorInfo info)

Bufferの生成

virtual void RTC::OutPortPullConnector::deactivate ( )
inlinevirtual

非アクティブ化

このコネクタを非アクティブ化する

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

virtual ReturnCode RTC::OutPortPullConnector::disconnect ( )
virtual

接続解除

consumer, publisher, buffer が解体・削除される。

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

virtual CdrBufferBase* RTC::OutPortPullConnector::getBuffer ( )
virtual

Buffer を取得する

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

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

void RTC::OutPortPullConnector::onConnect ( )

接続確立時にコールバックを呼ぶ

void RTC::OutPortPullConnector::onDisconnect ( )

接続切断時にコールバックを呼ぶ

virtual ReturnCode RTC::OutPortPullConnector::write ( const cdrMemoryStream &  data)
virtual

データの書き込み

Publisherに対してデータを書き込み、これにより対応するInPortへ データが転送される。

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

変数

CdrBufferBase* RTC::OutPortPullConnector::m_buffer
protected

Buffer へのポインタ

ConnectorListeners& RTC::OutPortPullConnector::m_listeners
protected

ConnectorListenrs への参照

OutPortProvider* RTC::OutPortPullConnector::m_provider
protected

OutPortProvider へのポインタ