18#ifndef TRINITY_FACTORY_HOLDER
19#define TRINITY_FACTORY_HOLDER
26template<
class T,
class O,
class Key = std::
string>
38 virtual T*
Create(O*
object =
nullptr)
const = 0;
ObjectRegistry< FactoryHolder< T, O, Key >, Key > FactoryHolderRegistry
FactoryHolder(Key const &k)
virtual T * Create(O *object=nullptr) const =0
Abstract Factory create method.
static ObjectRegistry< T, Key > * instance()
virtual int32 Permit(T const *) const =0