Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::fem::FEMObjectFactory< T > Class Template Reference

Create objects of derived classes by specifying a class ID. More...

#include <itkFEMObjectFactory.h>

Inheritance diagram for itk::fem::FEMObjectFactory:

Inheritance graph
[legend]
Collaboration diagram for itk::fem::FEMObjectFactory< T >:

Collaboration graph
[legend]
List of all members.

Static Public Methods

T::Pointer Create (int id)
StrClassName ID2ClassName (int id)
int Register (COF f, const char *str)
int ClassName2ID (StrClassName str)

Friends

class Dummy

Detailed Description

template<class T>
class itk::fem::FEMObjectFactory< T >

Create objects of derived classes by specifying a class ID.

ObjectFactory is used to create various objects of derived classes by specifying an ID of a derived class. Before the objects can be created by object factory, you should first call the Register method for each class:

int ID_Derived=FEMObjectFactory<BaseClass>.Register( NewDerivedClass, "NewDerivedClassName" );

You should also put the NewDerivedClass function in an anonymous namespace and make it static. So a complete registration of a derived class looks like:

Definition at line 67 of file itkFEMObjectFactory.h.


Member Function Documentation

template<class T>
int itk::fem::FEMObjectFactory< T >::ClassName2ID StrClassName    str [inline, static]
 

Find the ID of the class with specified name (this is a slow function). If you have to create many objects of the same class, obtain the class ID with this function first and then use that ID with the Create member function.

Definition at line 127 of file itkFEMObjectFactory.h.

template<class T>
T::Pointer itk::fem::FEMObjectFactory< T >::Create int    id [inline, static]
 

Create a new object based on class identifier id and return a pointer to it.

Definition at line 91 of file itkFEMObjectFactory.h.

template<class T>
StrClassName itk::fem::FEMObjectFactory< T >::ID2ClassName int    id [inline, static]
 

Return the name of the class (as a string) for the given ID.

Definition at line 116 of file itkFEMObjectFactory.h.

template<class T>
int itk::fem::FEMObjectFactory< T >::Register COF    f,
const char *    str
[inline, static]
 

Register the class with the factory. A pointer to a 'create' function and class name as a string must be provided. Function returns the newly assigned ID of the class, which can be later used to create objects of that class.

Definition at line 101 of file itkFEMObjectFactory.h.


Friends And Related Function Documentation

template<class T>
friend class Dummy [friend]
 

By defining a Dummy friend class, some warnings in gcc about destructor being private are eliminated.

Definition at line 195 of file itkFEMObjectFactory.h.


The documentation for this class was generated from the following file:
Generated at Fri May 21 01:50:55 2004 for ITK by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2000