AnimatLab
2
Test
|
Standard class factory. More...
#include <StdClassFactory.h>
Public Member Functions | |
IStdClassFactory () | |
Default constructor. More... | |
virtual | ~IStdClassFactory () |
Destructor. More... | |
virtual CStdSerialize * | CreateObject (std::string strClassType, std::string strObjectType, bool bThrowError=true)=0 |
Creates an object of the specified class and object types. More... | |
Static Public Member Functions | |
static IStdClassFactory * | LoadModule (std::string strModuleName, bool bThrowError=true) |
Loads a DLL module by name and attempts to call the GetStdClassFactory method to get a pointer to the class factory. More... | |
Standard class factory.
This is a standard interface used for all class factories. To make your library able able to be loaded you need to derive a class from this and then implement the GetStdClassFactory method within your new DLL.
Definition at line 20 of file StdClassFactory.h.
IStdClassFactory::IStdClassFactory | ( | ) |
|
virtual |
|
pure virtual |
Creates an object of the specified class and object types.
strClassType | Type of the class. |
strObjectType | Type of the object. |
bThrowError | true to throw error if there is a problem. |
Implemented in TestClassFactory.
Referenced by AnimatSim::Simulator::CreateObject(), AnimatSim::Simulator::CreateSimulator(), AnimatSim::Behavior::NervousSystem::LoadNeuralModule(), and AnimatSim::Simulator::LoadStructure().
|
static |
Loads a DLL module by name and attempts to call the GetStdClassFactory method to get a pointer to the class factory.
strModuleName | Name of the DLL module. |
Definition at line 95 of file StdClassFactory.cpp.
References StdUtils::Std_IsBlank(), StdUtils::Std_Replace(), and StdUtils::Std_ToLower().