OpenRTM-aist  1.2.1
公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar > クラステンプレート

オブジェクトリファレンスを保持するプレースホルダテンプレートクラス [詳解]

#include <CorbaConsumer.h>

RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar > の継承関係図
Inheritance graph
[凡例]
RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar > 連携図
Collaboration graph
[凡例]

公開メンバ関数

 CorbaConsumer ()
 コンストラクタ [詳解]
 
 CorbaConsumer (const CorbaConsumer &x)
 コピーコンストラクタ [詳解]
 
CorbaConsumeroperator= (const CorbaConsumer &x)
 代入演算子 [詳解]
 
void swap (CorbaConsumer &x)
 
virtual ~CorbaConsumer (void)
 仮想デストラクタ [詳解]
 
virtual bool setObject (CORBA::Object_ptr obj)
 オブジェクトをセットする [詳解]
 
ObjectTypePtr _ptr ()
 ObjectType 型のオブジェクトのリファレンスを取得 [詳解]
 
ObjectTypePtr operator-> ()
 ObjectType 型のオブジェクトのリファレンスを取得 [詳解]
 
virtual void releaseObject ()
 CORBAオブジェクトの設定をクリアする [詳解]
 
- 基底クラス RTC::CorbaConsumerBase に属する継承公開メンバ関数
 CorbaConsumerBase ()
 コンストラクタ [詳解]
 
 CorbaConsumerBase (const CorbaConsumerBase &x)
 コピーコンストラクタ [詳解]
 
CorbaConsumerBaseoperator= (const CorbaConsumerBase &x)
 代入演算子 [詳解]
 
void swap (CorbaConsumerBase &x)
 swap関数 [詳解]
 
virtual ~CorbaConsumerBase (void)
 仮想デストラクタ [詳解]
 
virtual CORBA::Object_ptr getObject ()
 CORBAオブジェクトを取得する [詳解]
 

限定公開変数類

ObjectTypeVar m_var
 設定された CORBA オブジェクト [詳解]
 
- 基底クラス RTC::CorbaConsumerBase に属する継承限定公開変数類
CORBA::Object_var m_objref
 設定された CORBA オブジェクト [詳解]
 

詳解

template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
class RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >

オブジェクトリファレンスを保持するプレースホルダテンプレートクラス

テンプレート引数で与えられた型のCORBAオブジェクトを保持する。 オブジェクトがセットされたときに、与えられた型で narrow されるので、 _ptr() で取得するリファレンスは、narrow 済みのリファレンスである。 内部的な使用のために、_ptr 型, _var型も同時にテンプレート引数として 与える必要がある。(下記注意事項参照)
注意: ObjectTypePtr = ObjectType::_ptr_type としているか、 _ptr_type は標準では規定されていない。 ただし、omniORB, TAO, MICO では、プロキシクラス内部で、 Type_ptr 型を _ptr_type に typedef しているので、 テンプレートの第2引数を指定しなくてもコンパイルは通る。

引数
ObjectTypeこのホルダが保持するオブジェクトの型
ObjectTypePtrこのホルダが保持する _ptr 型
ObjectTypeVarこのホルダが保持する _var 型
から
0.4.0

構築子と解体子

template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::CorbaConsumer ( )
inline

コンストラクタ

template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::CorbaConsumer ( const CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar > &  x)
inline

コピーコンストラクタ

引数
xコピー元
template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
virtual RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::~CorbaConsumer ( void  )
inlinevirtual

仮想デストラクタ

関数詳解

template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
ObjectTypePtr RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::_ptr ( )
inline

ObjectType 型のオブジェクトのリファレンスを取得

ObjectType に narrow済みのオブジェクトのリファレンスを取得する。 オブジェクトリファレンスを使用するには、setObject() でセット済みで なければならない。 オブジェクトがセットされていなければ nil オブジェクトリファレンスが 返される。

戻り値
ObjectType に narrow 済みのオブジェクトのリファレンス
template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
ObjectTypePtr RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::operator-> ( )
inline

ObjectType 型のオブジェクトのリファレンスを取得

ObjectType に narrow済みのオブジェクトのリファレンスを取得する。 オブジェクトリファレンスを使用するには、setObject() でセット済みで なければならない。 オブジェクトがセットされていなければ nil オブジェクトリファレンスが 返される。

戻り値
ObjectType に narrow 済みのオブジェクトのリファレンス
template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
CorbaConsumer& RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::operator= ( const CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar > &  x)
inline

代入演算子

引数
x代入元
戻り値
代入結果
template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
virtual void RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::releaseObject ( )
inlinevirtual

CORBAオブジェクトの設定をクリアする

設定されている CORBA オブジェクトをクリアする。 CORBAオブジェクトそのものに対しては何も操作しない。

RTC::CorbaConsumerBaseを再実装しています。

template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
virtual bool RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::setObject ( CORBA::Object_ptr  obj)
inlinevirtual

オブジェクトをセットする

ConsumerBase のオーバーライド。CORBA::Object_var にオブジェクトをセット するとともに、templateパラメータの型で narrow したオブジェクトを メンバ変数に保持する。 _var 型変数を引数に渡す場合は var.in() を渡すこと。

引数
[in]objCORBA Objecct
戻り値
オブジェクト設定結果 設定対象オブジェクトが null の場合は false が返ってくる

RTC::CorbaConsumerBaseを再実装しています。

RTC::OutPortSHMConsumer, RTC::InPortSHMConsumerで再実装されています。

template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
void RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::swap ( CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar > &  x)
inline

メンバ詳解

template<class ObjectType, typename ObjectTypePtr = typename ObjectType::_ptr_type, typename ObjectTypeVar = typename ObjectType::_var_type>
ObjectTypeVar RTC::CorbaConsumer< ObjectType, ObjectTypePtr, ObjectTypeVar >::m_var
protected

設定された CORBA オブジェクト

参照元 RTC::CorbaConsumer< ::OpenRTM::PortSharedMemory >::swap().


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