Public Types | Public Member Functions | Protected Attributes

Factory3Param< T, P0, P1, P2 > Class Template Reference

Inheritance diagram for Factory3Param< T, P0, P1, P2 >:
FactoryBase

List of all members.

Public Types

typedef T *(* Creator )(P0, P1, P2)

Public Member Functions

void addCreator (Creator, const char *nm=0, const char *usernm=0)
T * create (const char *nm, P0, P1, P2, bool chknm=true) const

Protected Attributes

TypeSet< Creatorcreators_

template<class T, class P0, class P1, class P2>
class Factory3Param< T, P0, P1, P2 >


Member Typedef Documentation

template<class T , class P0 , class P1 , class P2 >
typedef T*(* Factory3Param< T, P0, P1, P2 >::Creator)(P0, P1, P2)

Member Function Documentation

template<class T , class P0 , class P1 , class P2 >
void Factory3Param< T, P0, P1, P2 >::addCreator ( Creator  cr,
const char *  nm = 0,
const char *  usernm = 0 
) [inline]

Name may be be null If nm is found, old creator is replaced. nm can be a SeparString, separated by cSeparator(), allowing multiple names, where the first name will be the main name that is returned in getNames.

template<class T , class P0 , class P1 , class P2 >
T * Factory3Param< T, P0, P1, P2 >::create ( const char *  nm,
P0  p0,
P1  p1,
P2  p2,
bool  chknm = true 
) const [inline]

Name may be be null, if null name is given chknm will be forced to false


Member Data Documentation

template<class T , class P0 , class P1 , class P2 >
TypeSet<Creator> Factory3Param< T, P0, P1, P2 >::creators_ [protected]