OpenRTM-aist
1.2.1
|
#include <Factory.h>
公開型 | |
enum | ReturnCode { FACTORY_OK, FACTORY_ERROR, ALREADY_EXISTS, NOT_FOUND, INVALID_ARG, UNKNOWN_ERROR } |
typedef std::map< Identifier, FactoryEntry > | FactoryMap |
typedef FactoryMap::iterator | FactoryMapIt |
typedef std::map< AbstractClass *, FactoryEntry > | ObjectMap |
typedef ObjectMap::iterator | ObjectMapIt |
公開メンバ関数 | |
bool | hasFactory (const Identifier &id) |
ファクトリー有無チェック [詳解] | |
std::vector< Identifier > | getIdentifiers () |
ファクトリーIDリスト取得 [詳解] | |
ReturnCode | addFactory (const Identifier &id, Creator creator, Destructor destructor) |
ファクトリー登録 [詳解] | |
ReturnCode | removeFactory (const Identifier &id) |
ファクトリー削除 [詳解] | |
AbstractClass * | createObject (const Identifier &id) |
ファクトリーオブジェクト生成 [詳解] | |
ReturnCode | deleteObject (const Identifier &id, AbstractClass *&obj) |
ファクトリーオブジェクト削除 [詳解] | |
ReturnCode | deleteObject (AbstractClass *&obj) |
ファクトリーオブジェクト削除 [詳解] | |
std::vector< AbstractClass * > | createdObjects () |
生成済みオブジェクトリストの取得 [詳解] | |
bool | isProducerOf (AbstractClass *obj) |
オブジェクトがこのファクトリの生成物かどうか調べる [詳解] | |
ReturnCode | objectToIdentifier (AbstractClass *obj, Identifier &id) |
オブジェクトからクラス識別子(ID)を取得する [詳解] | |
Creator | objectToCreator (AbstractClass *obj) |
オブジェクトのコンストラクタを取得する [詳解] | |
Destructor | objectToDestructor (AbstractClass *obj) |
オブジェクトのデストラクタを取得する [詳解] | |
Factory テンプレートクラス
typedef std::map<Identifier, FactoryEntry> coil::Factory< AbstractClass, Identifier, Compare, Creator, Destructor >::FactoryMap |
typedef FactoryMap::iterator coil::Factory< AbstractClass, Identifier, Compare, Creator, Destructor >::FactoryMapIt |
typedef std::map<AbstractClass*, FactoryEntry> coil::Factory< AbstractClass, Identifier, Compare, Creator, Destructor >::ObjectMap |
typedef ObjectMap::iterator coil::Factory< AbstractClass, Identifier, Compare, Creator, Destructor >::ObjectMapIt |
enum coil::Factory::ReturnCode |
|
inline |
ファクトリー登録
ファクトリーを登録する。
id | ファクトリーID |
creator | クリエータ用ファンクタ |
destructor | デストラクタ用ファンクタ |
|
inline |
生成済みオブジェクトリストの取得
このファクトリで生成されたオブジェクトのリストを取得する。
|
inline |
ファクトリーオブジェクト生成
ファクトリーオブジェクトを生成する。
id | ファクトリーID |
|
inline |
ファクトリーオブジェクト削除
ファクトリーオブジェクトを削除する。
id | ファクトリーID |
obj | ファクトリーオブジェクト |
|
inline |
ファクトリーオブジェクト削除
ファクトリーオブジェクトを削除する。
obj | ファクトリーオブジェクト |
|
inline |
ファクトリーIDリスト取得
ファクトリーIDリストを返す。
|
inline |
ファクトリー有無チェック
指定IDのファクトリー有無を返す。
id | ファクトリーID |
|
inline |
オブジェクトがこのファクトリの生成物かどうか調べる
obj | 対象オブジェクト |
|
inline |
オブジェクトのコンストラクタを取得する
このファクトリで生成されたオブジェクトのコンストラクタを取得する。 obj はこのファクトリで生成されたものでなければならない。予め isProducerOf() 関数で当該オブジェクトがこのファクトリの生成物で あるかどうかをチェックしなければならない。
|
inline |
オブジェクトのデストラクタを取得する
このファクトリで生成されたオブジェクトのデストラクタを取得する。 obj はこのファクトリで生成されたものでなければならない。予め isProducerOf() 関数で当該オブジェクトがこのファクトリの生成物で あるかどうかをチェックしなければならない。
参照先 coil::Destructor().
|
inline |
オブジェクトからクラス識別子(ID)を取得する
当該オブジェクトのクラス識別子(ID)を取得する。
obj | [in] クラス識別子(ID)を取得したいオブジェクト |
id | [out] クラス識別子(ID) |
|
inline |
ファクトリー削除
ファクトリーを削除する。
id | ファクトリーID |