#include <Factory.h>
Protected Attributes | |
std::multimap< Key, Creator * > | registry |
Public Member Functions | |
bool | registerCreator (Key key, Creator *creator, bool multi=false) |
template<class U = Argument, std::enable_if_t< std::is_same_v< U, NoArgument >, int > = 0> | |
ObjectPtr | createObject (Key key, Argument arg=NoArgument()) |
ObjectPtr | createObject (Key key, Argument arg) |
ObjectPtr | createAnyObject (Argument arg) |
template<typename OutIterator > | |
void | uniqueKeys (OutIterator out) |
bool | hasKey (Key key) |
bool | duplicateEntry (Key existing, Key duplicate) |
bool | resetEntry (Key existingKey) |
iterator | begin () |
iterator | end () |
const_iterator | begin () const |
const_iterator | end () const |
Static Public Member Functions | |
static Factory< Key, Object, Argument, ObjectPtr > * | getInstance () |
static ObjectPtr | CreateObject (Key key, Argument arg) |
static ObjectPtr | CreateAnyObject (Argument arg) |
static bool | HasKey (Key key) |
static bool | DuplicateEntry (Key existing, Key duplicate) |
static bool | ResetEntry (Key existing) |
|
protected |
|
inline |
|
inline |
TPtr sofa::helper::Factory< TKey, TObject, TArgument, TPtr >::createAnyObject | ( | Argument | arg | ) |
|
inlinestatic |
TPtr sofa::helper::Factory< TKey, TObject, TArgument, TPtr >::createObject | ( | Key | key, |
Argument | arg | ||
) |
|
inlinestatic |
|
inline |
bool sofa::helper::Factory< TKey, TObject, TArgument, TPtr >::duplicateEntry | ( | Key | existing, |
Key | duplicate | ||
) |
|
inlinestatic |
|
inline |
|
inline |
|
static |
bool sofa::helper::Factory< TKey, TObject, TArgument, TPtr >::hasKey | ( | Key | key | ) |
|
inlinestatic |
|
inline |
|
inlinestatic |
bool sofa::helper::Factory< TKey, TObject, TArgument, TPtr >::resetEntry | ( | Key | existingKey | ) |
void sofa::helper::Factory< TKey, TObject, TArgument, TPtr >::uniqueKeys | ( | OutIterator | out | ) |