OOFEM 3.0
Loading...
Searching...
No Matches
oofem::ClassFactory Class Reference

#include <classfactory.h>

Public Member Functions

 ClassFactory ()
 Creates empty factory.
std::map< std::string, std::list< std::string > > getRegisteredNames ()
std::unique_ptr< ElementcreateElement (const char *name, int num, Domain *domain)
bool registerElement (const char *name, std::unique_ptr< Element >(*creator)(int, Domain *))
std::unique_ptr< DofManagercreateDofManager (const char *name, int num, Domain *domain)
bool registerDofManager (const char *name, std::unique_ptr< DofManager >(*creator)(int, Domain *))
std::unique_ptr< GeneralBoundaryConditioncreateBoundaryCondition (const char *name, int num, Domain *domain)
bool registerBoundaryCondition (const char *name, std::unique_ptr< GeneralBoundaryCondition >(*creator)(int, Domain *))
std::unique_ptr< CrossSectioncreateCrossSection (const char *name, int num, Domain *domain)
bool registerCrossSection (const char *name, std::unique_ptr< CrossSection >(*creator)(int, Domain *))
std::unique_ptr< MaterialcreateMaterial (const char *name, int num, Domain *domain)
bool registerMaterial (const char *name, std::unique_ptr< Material >(*creator)(int, Domain *))
std::unique_ptr< EngngModelcreateEngngModel (const char *name, int num, EngngModel *master)
bool registerEngngModel (const char *name, std::unique_ptr< EngngModel >(*creator)(int, EngngModel *))
std::unique_ptr< FunctioncreateFunction (const char *name, int num, Domain *domain)
bool registerFunction (const char *name, std::unique_ptr< Function >(*creator)(int, Domain *))
std::unique_ptr< NonlocalBarriercreateNonlocalBarrier (const char *name, int num, Domain *domain)
bool registerNonlocalBarrier (const char *name, std::unique_ptr< NonlocalBarrier >(*creator)(int, Domain *))
std::unique_ptr< ExportModulecreateExportModule (const char *name, int num, EngngModel *emodel)
bool registerExportModule (const char *name, std::unique_ptr< ExportModule >(*creator)(int, EngngModel *))
std::unique_ptr< MonitorcreateMonitor (const char *name, int num)
bool registerMonitor (const char *name, std::unique_ptr< Monitor >(*creator)(int))
std::unique_ptr< SparseNonLinearSystemNMcreateNonLinearSolver (const char *name, Domain *domain, EngngModel *emodel)
bool registerSparseNonLinearSystemNM (const char *name, std::unique_ptr< SparseNonLinearSystemNM >(*creator)(Domain *, EngngModel *))
std::unique_ptr< InitModulecreateInitModule (const char *name, int num, EngngModel *emodel)
bool registerInitModule (const char *name, std::unique_ptr< InitModule >(*creator)(int, EngngModel *))
std::unique_ptr< InitialConditioncreateInitialCondition (const char *name, int num, Domain *d)
std::unique_ptr< TopologyDescriptioncreateTopology (const char *name, Domain *domain)
bool registerTopologyDescription (const char *name, std::unique_ptr< TopologyDescription >(*creator)(Domain *))
std::unique_ptr< SparseMtrxcreateSparseMtrx (SparseMtrxType type)
bool registerSparseMtrx (SparseMtrxType type, std::unique_ptr< SparseMtrx >(*creator)(void))
DofcreateDof (dofType type, DofIDItem dofid, DofManager *dman)
std::unique_ptr< SparseLinearSystemNMcreateSparseLinSolver (LinSystSolverType st, Domain *d, EngngModel *m)
bool registerSparseLinSolver (LinSystSolverType type, std::unique_ptr< SparseLinearSystemNM >(*creator)(Domain *, EngngModel *))
std::unique_ptr< ErrorEstimatorcreateErrorEstimator (ErrorEstimatorType type, int num, Domain *d)
bool registerErrorEstimator (ErrorEstimatorType type, std::unique_ptr< ErrorEstimator >(*creator)(int, Domain *))
bool registerNodalRecoveryModel (NodalRecoveryModel ::NodalRecoveryModelType name, std::unique_ptr< NodalRecoveryModel >(*creator)(Domain *))
std::unique_ptr< NodalRecoveryModelcreateNodalRecoveryModel (NodalRecoveryModel ::NodalRecoveryModelType type, Domain *d)
std::unique_ptr< EnrichmentItemcreateEnrichmentItem (const char *name, int num, XfemManager *xm, Domain *domain)
bool registerEnrichmentItem (const char *name, std::unique_ptr< EnrichmentItem >(*creator)(int, XfemManager *, Domain *))
std::unique_ptr< NucleationCriterioncreateNucleationCriterion (const char *name, Domain *domain)
bool registerNucleationCriterion (const char *name, std::unique_ptr< NucleationCriterion >(*creator)(Domain *))
std::unique_ptr< EnrichmentFunctioncreateEnrichmentFunction (const char *name, int num, Domain *domain)
bool registerEnrichmentFunction (const char *name, std::unique_ptr< EnrichmentFunction >(*creator)(int, Domain *))
std::unique_ptr< EnrichmentFrontcreateEnrichmentFront (const char *name)
bool registerEnrichmentFront (const char *name, std::unique_ptr< EnrichmentFront >(*creator)())
std::unique_ptr< PropagationLawcreatePropagationLaw (const char *name)
bool registerPropagationLaw (const char *name, std::unique_ptr< PropagationLaw >(*creator)())
std::unique_ptr< BasicGeometrycreateGeometry (const char *name)
bool registerGeometry (const char *name, std::unique_ptr< BasicGeometry >(*creator)())
std::unique_ptr< XfemManagercreateXfemManager (const char *name, Domain *domain)
bool registerXfemManager (const char *name, std::unique_ptr< XfemManager >(*creator)(Domain *))
std::unique_ptr< ContactSurfacecreateContactSurface (const char *name, int num, Domain *domain)
bool registerContactSurface (const char *name, std::unique_ptr< ContactSurface >(*creator)(int, Domain *))
std::unique_ptr< TermcreateTerm (const char *name)
bool registerTerm (const char *name, std::unique_ptr< Term >(*creator)())
std::unique_ptr< FailureCriteriacreateFailureCriteria (const char *name, int num, FractureManager *fracManager)
bool registerFailureCriteria (const char *name, std::unique_ptr< FailureCriteria >(*creator)(int, FractureManager *))
std::unique_ptr< FailureCriteriaStatuscreateFailureCriteriaStatus (const char *name, int num, FailureCriteria *critManager)
bool registerFailureCriteriaStatus (const char *name, std::unique_ptr< FailureCriteriaStatus >(*creator)(int, FailureCriteria *))
std::unique_ptr< SparseGeneralEigenValueSystemNMcreateGeneralizedEigenValueSolver (GenEigvalSolverType name, Domain *d, EngngModel *m)
bool registerGeneralizedEigenValueSolver (GenEigvalSolverType name, std::unique_ptr< SparseGeneralEigenValueSystemNM >(*creator)(Domain *, EngngModel *))
std::unique_ptr< IntegrationRulecreateIRule (IntegrationRuleType name, int number, Element *e)
std::unique_ptr< MaterialMappingAlgorithmcreateMaterialMappingAlgorithm (MaterialMappingAlgorithmType name)
bool registerMaterialMappingAlgorithm (MaterialMappingAlgorithmType name, std::unique_ptr< MaterialMappingAlgorithm >(*creator)())
std::unique_ptr< MesherInterfacecreateMesherInterface (MeshPackageType name, Domain *d)
bool registerMesherInterface (MeshPackageType name, std::unique_ptr< MesherInterface >(*creator)(Domain *))
std::unique_ptr< LoadBalancerMonitorcreateLoadBalancerMonitor (const char *name, EngngModel *e)
bool registerLoadBalancerMonitor (const char *name, std::unique_ptr< LoadBalancerMonitor >(*creator)(EngngModel *))
std::unique_ptr< LoadBalancercreateLoadBalancer (const char *name, Domain *d)
bool registerLoadBalancer (const char *name, std::unique_ptr< LoadBalancer >(*creator)(Domain *))
std::unique_ptr< TimeStepReductionStrategycreateTimeStepReductionStrategy (const char *name, int number)
bool registerTimeStepReductionStrategy (const char *name, std::unique_ptr< TimeStepReductionStrategy >(*creator)(int))
std::unique_ptr< FieldcreateField (const char *name)
bool registerField (const char *name, std::unique_ptr< Field >(*creator)())

Private Attributes

std ::map< std ::string, std::unique_ptr< Element >(*)(int, Domain *) > elemList
 Associative container containing element creators with element name as key.
std ::map< std ::string, std::unique_ptr< DofManager >(*)(int, Domain *) > dofmanList
 Associative container containing dofmanager creators with dofmanager name as key.
std ::map< std ::string, std::unique_ptr< GeneralBoundaryCondition >(*)(int, Domain *) > bcList
 Associative container containing boundary condition creators with bc name as key.
std ::map< std ::string, std::unique_ptr< CrossSection >(*)(int, Domain *) > csList
 Associative container containing cross section creators with cross section name as key.
std ::map< std ::string, std::unique_ptr< Material >(*)(int, Domain *) > matList
 Associative container containing material creators with material name as key.
std ::map< std ::string, std::unique_ptr< EngngModel >(*)(int, EngngModel *) > engngList
 Associative container containing engng model creators with engng model name as key.
std ::map< std ::string, std::unique_ptr< Function >(*)(int, Domain *) > funcList
 Associative container containing load time function creators with function name as key.
std ::map< std ::string, std::unique_ptr< NonlocalBarrier >(*)(int, Domain *) > nlbList
 Associative container containing nonlocal barriers creators with barrier name as key.
std ::map< std ::string, std::unique_ptr< ExportModule >(*)(int, EngngModel *) > exportList
 Associative container containing export module creators.
std ::map< std ::string, std::unique_ptr< Monitor >(*)(int) > monitorList
 Associative container containing monitor creators.
std ::map< std ::string, std::unique_ptr< SparseNonLinearSystemNM >(*)(Domain *, EngngModel *) > nonlinList
 Associative container containing nonlinear solver creators.
std ::map< std ::string, std::unique_ptr< InitModule >(*)(int, EngngModel *) > initList
 Associative container containing init module creators.
std ::map< std ::string, std::unique_ptr< TopologyDescription >(*)(Domain *) > topologyList
 Associative container containing topology description creators.
std ::map< std ::string, std::unique_ptr< LoadBalancer >(*)(Domain *) > loadBalancerList
 Associative container containing load balancer creators.
std ::map< std ::string, std::unique_ptr< LoadBalancerMonitor >(*)(EngngModel *) > loadMonitorList
 Associative container containing load balancer monitor creators.
std ::map< SparseMtrxType, std::unique_ptr< SparseMtrx >(*)() > sparseMtrxList
 Associative container containing sparse matrix creators.
std ::map< dofType, Dof *(*)(DofIDItem, DofManager *) > dofList
 Associative container containing dof creators.
std ::map< ErrorEstimatorType, std::unique_ptr< ErrorEstimator >(*)(int, Domain *) > errEstList
 Associative container containing error estimator creators.
std ::map< LinSystSolverType, std::unique_ptr< SparseLinearSystemNM >(*)(Domain *, EngngModel *) > sparseLinSolList
 Associative container containing sparse linear solver creators.
std ::map< NodalRecoveryModel ::NodalRecoveryModelType, std::unique_ptr< NodalRecoveryModel >(*)(Domain *) > nodalRecoveryModelList
 Associative container containing nodal recovery model creators.
std ::map< GenEigvalSolverType, std::unique_ptr< SparseGeneralEigenValueSystemNM >(*)(Domain *, EngngModel *) > generalizedEigenValueSolverList
 Associative container containing sparse generalized eigenvalue creators.
std ::map< MaterialMappingAlgorithmType, std::unique_ptr< MaterialMappingAlgorithm >(*)() > materialMappingList
 Associative container containing material mapping algorithm creators.
std ::map< MeshPackageType, std::unique_ptr< MesherInterface >(*)(Domain *) > mesherInterfaceList
 Associative container containing mesher interface creators.
std ::map< std ::string, std::unique_ptr< EnrichmentItem >(*)(int, XfemManager *, Domain *) > enrichItemList
 Associative container containing enrichment item creators.
std ::map< std ::string, std::unique_ptr< NucleationCriterion >(*)(Domain *) > nucleationCritList
 Associative container containing nucleation criterion creators.
std ::map< std ::string, std::unique_ptr< EnrichmentFunction >(*)(int, Domain *) > enrichFuncList
 Associative container containing enrichment function creators.
std ::map< std ::string, std::unique_ptr< BasicGeometry >(*)() > geometryList
 Associative container containing geometry creators.
std ::map< std ::string, std::unique_ptr< EnrichmentDomain >(*)() > enrichmentDomainList
 Associative container containing enrichment-domain creators.
std ::map< std ::string, std::unique_ptr< EnrichmentFront >(*)() > enrichmentFrontList
 Associative container containing enrichment front creators.
std ::map< std ::string, std::unique_ptr< PropagationLaw >(*)() > propagationLawList
 Associative container containing propagation law creators.
std ::map< std ::string, std::unique_ptr< XfemManager >(*)(Domain *) > xManList
 Associative container containing XfemManager creators.
std ::map< std ::string, std::unique_ptr< FailureCriteria >(*)(int, FractureManager *) > failureCriteriaList
 Associative container containing failure criteria creators.
std ::map< std ::string, std::unique_ptr< FailureCriteriaStatus >(*)(int, FailureCriteria *) > failureCriteriaStatusList
std ::map< std ::string, std::unique_ptr< TimeStepReductionStrategy >(*)(int) > timeStepReductionStrategyList
 Associative container containing TimeStepReductionStrategy.
std::map< std::string, std::unique_ptr< ContactSurface >(*)(int, Domain *) > contactSurfaceList
 Associative container containing contact surface creators with name as key.
std ::map< std ::string, std::unique_ptr< Field >(*)() > fieldList
 Associative container containing Field creators.
std ::map< std ::string, std::unique_ptr< Term >(*)() > termList
 MPM stuff.

Detailed Description

Class Factory allows to register terminal oofem classes, based on their membership (classes representing elements, dof managers, material models, etc) and create them on demand according to their name or id. Global instance of ClassFactory named classFactory is created on startup.

Note
To register new elements on startup, you must call GiveClassFactory to ensure that the global class factory is created first. This is ensured if you use the corresponding macro.

Definition at line 191 of file classfactory.h.

Constructor & Destructor Documentation

◆ ClassFactory()

oofem::ClassFactory::ClassFactory ( )

Creates empty factory.

Definition at line 136 of file classfactory.C.

References oofem::dofCreator(), and dofList.

Member Function Documentation

◆ createBoundaryCondition()

std::unique_ptr< GeneralBoundaryCondition > oofem::ClassFactory::createBoundaryCondition ( const char * name,
int num,
Domain * domain )

Creates new instance of boundary condition corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numnumber of new object.
domainDomain assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 219 of file classfactory.C.

References bcList, and oofem::cf_create().

◆ createContactSurface()

std::unique_ptr< ContactSurface > oofem::ClassFactory::createContactSurface ( const char * name,
int num,
Domain * domain )

Definition at line 229 of file classfactory.C.

References oofem::cf_create(), and contactSurfaceList.

◆ createCrossSection()

std::unique_ptr< CrossSection > oofem::ClassFactory::createCrossSection ( const char * name,
int num,
Domain * domain )

Creates new instance of cross section corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numobject's number.
domainDomain assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 242 of file classfactory.C.

References oofem::cf_create(), and csList.

◆ createDof()

Dof * oofem::ClassFactory::createDof ( dofType type,
DofIDItem dofid,
DofManager * dman )

Creates new instance of DOF corresponding to given keyword.

Parameters
typeID determining the type of new instance.
dofidThe dof ID.
dmanDof manager assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 155 of file classfactory.C.

References oofem::cf_create2(), and dofList.

◆ createDofManager()

std::unique_ptr< DofManager > oofem::ClassFactory::createDofManager ( const char * name,
int num,
Domain * domain )

Creates new instance of Dof manager corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numdofmanager number.
domainDomain assigned to new instance.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 209 of file classfactory.C.

References oofem::cf_create(), and dofmanList.

◆ createElement()

std::unique_ptr< Element > oofem::ClassFactory::createElement ( const char * name,
int num,
Domain * domain )

Creates new instance of element corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numElement number.
domainDomain assigned to new element.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 199 of file classfactory.C.

References oofem::cf_create(), and elemList.

◆ createEngngModel()

std::unique_ptr< EngngModel > oofem::ClassFactory::createEngngModel ( const char * name,
int num,
EngngModel * master )

Creates new instance of engng model corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numEngng model number.
masterMaster engineering model (used for multiscale modeling).
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 262 of file classfactory.C.

References oofem::cf_create(), and engngList.

◆ createEnrichmentFront()

std::unique_ptr< EnrichmentFront > oofem::ClassFactory::createEnrichmentFront ( const char * name)

Definition at line 386 of file classfactory.C.

References oofem::cf_create(), and enrichmentFrontList.

◆ createEnrichmentFunction()

std::unique_ptr< EnrichmentFunction > oofem::ClassFactory::createEnrichmentFunction ( const char * name,
int num,
Domain * domain )

Definition at line 364 of file classfactory.C.

References oofem::cf_create(), and enrichFuncList.

◆ createEnrichmentItem()

std::unique_ptr< EnrichmentItem > oofem::ClassFactory::createEnrichmentItem ( const char * name,
int num,
XfemManager * xm,
Domain * domain )

Definition at line 344 of file classfactory.C.

References oofem::cf_create(), and enrichItemList.

◆ createErrorEstimator()

std::unique_ptr< ErrorEstimator > oofem::ClassFactory::createErrorEstimator ( ErrorEstimatorType type,
int num,
Domain * d )

Creates new instance of ErrorEstimator corresponding to given type.

Parameters
typeErrorEstimatorType id determining the type of new instance.
numobject's number.
dDomain assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 170 of file classfactory.C.

References oofem::cf_create4(), and errEstList.

◆ createExportModule()

std::unique_ptr< ExportModule > oofem::ClassFactory::createExportModule ( const char * name,
int num,
EngngModel * emodel )

Creates new instance of export module corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numExport module number.
emodelEngineering model that object belongs to.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 292 of file classfactory.C.

References oofem::cf_create(), and exportList.

◆ createFailureCriteria()

std::unique_ptr< FailureCriteria > oofem::ClassFactory::createFailureCriteria ( const char * name,
int num,
FractureManager * fracManager )

Definition at line 429 of file classfactory.C.

References oofem::cf_create(), and failureCriteriaList.

◆ createFailureCriteriaStatus()

std::unique_ptr< FailureCriteriaStatus > oofem::ClassFactory::createFailureCriteriaStatus ( const char * name,
int num,
FailureCriteria * critManager )

Definition at line 439 of file classfactory.C.

References oofem::cf_create(), and failureCriteriaStatusList.

◆ createField()

std::unique_ptr< Field > oofem::ClassFactory::createField ( const char * name)

Definition at line 536 of file classfactory.C.

References oofem::cf_create(), and fieldList.

◆ createFunction()

std::unique_ptr< Function > oofem::ClassFactory::createFunction ( const char * name,
int num,
Domain * domain )

Creates new instance of load time function corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numobject's number.
domainDomain assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 272 of file classfactory.C.

References oofem::cf_create(), and funcList.

◆ createGeneralizedEigenValueSolver()

std::unique_ptr< SparseGeneralEigenValueSystemNM > oofem::ClassFactory::createGeneralizedEigenValueSolver ( GenEigvalSolverType name,
Domain * d,
EngngModel * m )

Definition at line 451 of file classfactory.C.

References oofem::cf_create4(), and generalizedEigenValueSolverList.

◆ createGeometry()

std::unique_ptr< BasicGeometry > oofem::ClassFactory::createGeometry ( const char * name)

Definition at line 406 of file classfactory.C.

References oofem::cf_create(), and geometryList.

◆ createInitialCondition()

std::unique_ptr< InitialCondition > oofem::ClassFactory::createInitialCondition ( const char * name,
int num,
Domain * d )

Creates new instance of Initial Condition corresponding to given type.

Parameters
nameKeyword string determining the type of new instance.
numobject's number.
dDomain assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 180 of file classfactory.C.

References oofem::conv2lower().

◆ createInitModule()

std::unique_ptr< InitModule > oofem::ClassFactory::createInitModule ( const char * name,
int num,
EngngModel * emodel )

Creates new instance of init module corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numInit module number.
emodelEngineering model that object belongs to.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 322 of file classfactory.C.

References oofem::cf_create(), and initList.

◆ createIRule()

std::unique_ptr< IntegrationRule > oofem::ClassFactory::createIRule ( IntegrationRuleType name,
int number,
Element * e )

Definition at line 461 of file classfactory.C.

References oofem::IRT_Gauss, and oofem::IRT_Lobatto.

◆ createLoadBalancer()

std::unique_ptr< LoadBalancer > oofem::ClassFactory::createLoadBalancer ( const char * name,
Domain * d )

Definition at line 502 of file classfactory.C.

References oofem::cf_create(), and loadBalancerList.

◆ createLoadBalancerMonitor()

std::unique_ptr< LoadBalancerMonitor > oofem::ClassFactory::createLoadBalancerMonitor ( const char * name,
EngngModel * e )

Definition at line 492 of file classfactory.C.

References oofem::cf_create(), and loadMonitorList.

◆ createMaterial()

std::unique_ptr< Material > oofem::ClassFactory::createMaterial ( const char * name,
int num,
Domain * domain )

Creates new instance of material corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
nummaterial number.
domainDomain assigned to new material.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 252 of file classfactory.C.

References oofem::cf_create(), and matList.

◆ createMaterialMappingAlgorithm()

std::unique_ptr< MaterialMappingAlgorithm > oofem::ClassFactory::createMaterialMappingAlgorithm ( MaterialMappingAlgorithmType name)

Definition at line 476 of file classfactory.C.

References oofem::cf_create4(), and materialMappingList.

◆ createMesherInterface()

std::unique_ptr< MesherInterface > oofem::ClassFactory::createMesherInterface ( MeshPackageType name,
Domain * d )

Definition at line 486 of file classfactory.C.

References oofem::cf_create4(), and mesherInterfaceList.

◆ createMonitor()

std::unique_ptr< Monitor > oofem::ClassFactory::createMonitor ( const char * name,
int num )

Creates new instance of monitor corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numMonitor number.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 302 of file classfactory.C.

References oofem::cf_create(), and monitorList.

◆ createNodalRecoveryModel()

std::unique_ptr< NodalRecoveryModel > oofem::ClassFactory::createNodalRecoveryModel ( NodalRecoveryModel ::NodalRecoveryModelType type,
Domain * d )

Creates new instance of nodal recovery model corresponding to given type.

Parameters
typeID determining the type of new instance.
dDomain assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 193 of file classfactory.C.

References oofem::cf_create4(), and nodalRecoveryModelList.

◆ createNonLinearSolver()

std::unique_ptr< SparseNonLinearSystemNM > oofem::ClassFactory::createNonLinearSolver ( const char * name,
Domain * domain,
EngngModel * emodel )

Creates new instance of nonlinear solver corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
domainDomain assigned to new object.
emodelEngineering model that object belongs to.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 312 of file classfactory.C.

References oofem::cf_create(), and nonlinList.

◆ createNonlocalBarrier()

std::unique_ptr< NonlocalBarrier > oofem::ClassFactory::createNonlocalBarrier ( const char * name,
int num,
Domain * domain )

Creates new instance of nonlocal barrier corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
numobject's number.
domainDomain assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 282 of file classfactory.C.

References oofem::cf_create(), and nlbList.

◆ createNucleationCriterion()

std::unique_ptr< NucleationCriterion > oofem::ClassFactory::createNucleationCriterion ( const char * name,
Domain * domain )

Definition at line 354 of file classfactory.C.

References oofem::cf_create(), and nucleationCritList.

◆ createPropagationLaw()

std::unique_ptr< PropagationLaw > oofem::ClassFactory::createPropagationLaw ( const char * name)

Definition at line 396 of file classfactory.C.

References oofem::cf_create(), and propagationLawList.

◆ createSparseLinSolver()

std::unique_ptr< SparseLinearSystemNM > oofem::ClassFactory::createSparseLinSolver ( LinSystSolverType st,
Domain * d,
EngngModel * m )

Creates new instance of SparseLinearSystemNM corresponding to given type.

Parameters
stLinSystSolverType id determining the type of new instance.
dDomain assigned to new object.
mEngngModel assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 160 of file classfactory.C.

References oofem::cf_create4(), and sparseLinSolList.

Referenced by oofem::InverseIteration::solve().

◆ createSparseMtrx()

std::unique_ptr< SparseMtrx > oofem::ClassFactory::createSparseMtrx ( SparseMtrxType type)

Creates new instance of sparse matrix corresponding to given keyword.

Parameters
typeSparseMtrxType id determining the type of new instance.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 145 of file classfactory.C.

References oofem::cf_create4(), and sparseMtrxList.

◆ createTerm()

std::unique_ptr< Term > oofem::ClassFactory::createTerm ( const char * name)

Definition at line 525 of file classfactory.C.

References oofem::cf_create(), and termList.

◆ createTimeStepReductionStrategy()

std::unique_ptr< TimeStepReductionStrategy > oofem::ClassFactory::createTimeStepReductionStrategy ( const char * name,
int number )

Definition at line 513 of file classfactory.C.

References oofem::cf_create(), and timeStepReductionStrategyList.

◆ createTopology()

std::unique_ptr< TopologyDescription > oofem::ClassFactory::createTopology ( const char * name,
Domain * domain )

Creates new instance of topology description corresponding to given keyword.

Parameters
nameKeyword string determining the type of new instance.
domainDomain assigned to new object.
Returns
Newly allocated object of requested type, null if keyword not supported.

Definition at line 332 of file classfactory.C.

References oofem::cf_create(), and topologyList.

◆ createXfemManager()

std::unique_ptr< XfemManager > oofem::ClassFactory::createXfemManager ( const char * name,
Domain * domain )

Definition at line 416 of file classfactory.C.

References oofem::cf_create(), and xManList.

◆ getRegisteredNames()

◆ registerBoundaryCondition()

bool oofem::ClassFactory::registerBoundaryCondition ( const char * name,
std::unique_ptr< GeneralBoundaryCondition >(* creator )(int, Domain *) )

Registers a new boundary condition in the class factory.

Parameters
nameKeyword string.

Definition at line 224 of file classfactory.C.

References bcList, and oofem::cf_store().

◆ registerContactSurface()

bool oofem::ClassFactory::registerContactSurface ( const char * name,
std::unique_ptr< ContactSurface >(* creator )(int, Domain *) )

Definition at line 235 of file classfactory.C.

References oofem::cf_store(), and contactSurfaceList.

◆ registerCrossSection()

bool oofem::ClassFactory::registerCrossSection ( const char * name,
std::unique_ptr< CrossSection >(* creator )(int, Domain *) )

Registers a new cross section in the class factory.

Parameters
nameKeyword string.

Definition at line 247 of file classfactory.C.

References oofem::cf_store(), and csList.

◆ registerDofManager()

bool oofem::ClassFactory::registerDofManager ( const char * name,
std::unique_ptr< DofManager >(* creator )(int, Domain *) )

Registers a new dof manager in the class factory.

Parameters
nameKeyword string.

Definition at line 214 of file classfactory.C.

References oofem::cf_store(), and dofmanList.

◆ registerElement()

bool oofem::ClassFactory::registerElement ( const char * name,
std::unique_ptr< Element >(* creator )(int, Domain *) )

Registers a new element in the class factory.

Parameters
nameKeyword string.

Definition at line 204 of file classfactory.C.

References oofem::cf_store(), and elemList.

◆ registerEngngModel()

bool oofem::ClassFactory::registerEngngModel ( const char * name,
std::unique_ptr< EngngModel >(* creator )(int, EngngModel *) )

Registers a new engineering model in the class factory.

Parameters
nameKeyword string.

Definition at line 267 of file classfactory.C.

References oofem::cf_store(), and engngList.

◆ registerEnrichmentFront()

bool oofem::ClassFactory::registerEnrichmentFront ( const char * name,
std::unique_ptr< EnrichmentFront >(* creator )() )

Definition at line 391 of file classfactory.C.

References oofem::cf_store(), and enrichmentFrontList.

◆ registerEnrichmentFunction()

bool oofem::ClassFactory::registerEnrichmentFunction ( const char * name,
std::unique_ptr< EnrichmentFunction >(* creator )(int, Domain *) )

Definition at line 369 of file classfactory.C.

References oofem::cf_store(), and enrichFuncList.

◆ registerEnrichmentItem()

bool oofem::ClassFactory::registerEnrichmentItem ( const char * name,
std::unique_ptr< EnrichmentItem >(* creator )(int, XfemManager *, Domain *) )

Definition at line 349 of file classfactory.C.

References oofem::cf_store(), and enrichItemList.

◆ registerErrorEstimator()

bool oofem::ClassFactory::registerErrorEstimator ( ErrorEstimatorType type,
std::unique_ptr< ErrorEstimator >(* creator )(int, Domain *) )

Registers a new error estimator.

Parameters
typeErrorEstimatorType id determining the type of new instance.

Definition at line 175 of file classfactory.C.

References oofem::cf_store2(), and errEstList.

◆ registerExportModule()

bool oofem::ClassFactory::registerExportModule ( const char * name,
std::unique_ptr< ExportModule >(* creator )(int, EngngModel *) )

Registers a new export module in the class factory.

Parameters
nameKeyword string.

Definition at line 297 of file classfactory.C.

References oofem::cf_store(), and exportList.

◆ registerFailureCriteria()

bool oofem::ClassFactory::registerFailureCriteria ( const char * name,
std::unique_ptr< FailureCriteria >(* creator )(int, FractureManager *) )

Definition at line 434 of file classfactory.C.

References oofem::cf_store(), and failureCriteriaList.

◆ registerFailureCriteriaStatus()

bool oofem::ClassFactory::registerFailureCriteriaStatus ( const char * name,
std::unique_ptr< FailureCriteriaStatus >(* creator )(int, FailureCriteria *) )

Definition at line 444 of file classfactory.C.

References oofem::cf_store(), and failureCriteriaStatusList.

◆ registerField()

bool oofem::ClassFactory::registerField ( const char * name,
std::unique_ptr< Field >(* creator )() )

Definition at line 541 of file classfactory.C.

References oofem::cf_store(), and fieldList.

◆ registerFunction()

bool oofem::ClassFactory::registerFunction ( const char * name,
std::unique_ptr< Function >(* creator )(int, Domain *) )

Registers a new load time function in the class factory.

Parameters
nameKeyword string.

Definition at line 277 of file classfactory.C.

References oofem::cf_store(), and funcList.

◆ registerGeneralizedEigenValueSolver()

bool oofem::ClassFactory::registerGeneralizedEigenValueSolver ( GenEigvalSolverType name,
std::unique_ptr< SparseGeneralEigenValueSystemNM >(* creator )(Domain *, EngngModel *) )

Definition at line 456 of file classfactory.C.

References oofem::cf_store2(), and generalizedEigenValueSolverList.

◆ registerGeometry()

bool oofem::ClassFactory::registerGeometry ( const char * name,
std::unique_ptr< BasicGeometry >(* creator )() )

Definition at line 411 of file classfactory.C.

References oofem::cf_store(), and geometryList.

◆ registerInitModule()

bool oofem::ClassFactory::registerInitModule ( const char * name,
std::unique_ptr< InitModule >(* creator )(int, EngngModel *) )

Registers a new init module in the class factory.

Parameters
nameKeyword string.

Definition at line 327 of file classfactory.C.

References oofem::cf_store(), and initList.

◆ registerLoadBalancer()

bool oofem::ClassFactory::registerLoadBalancer ( const char * name,
std::unique_ptr< LoadBalancer >(* creator )(Domain *) )

Definition at line 507 of file classfactory.C.

References oofem::cf_store(), and loadBalancerList.

◆ registerLoadBalancerMonitor()

bool oofem::ClassFactory::registerLoadBalancerMonitor ( const char * name,
std::unique_ptr< LoadBalancerMonitor >(* creator )(EngngModel *) )

Definition at line 497 of file classfactory.C.

References oofem::cf_store(), and loadMonitorList.

◆ registerMaterial()

bool oofem::ClassFactory::registerMaterial ( const char * name,
std::unique_ptr< Material >(* creator )(int, Domain *) )

Registers a new material in the class factory.

Parameters
nameKeyword string.

Definition at line 257 of file classfactory.C.

References oofem::cf_store(), and matList.

◆ registerMaterialMappingAlgorithm()

bool oofem::ClassFactory::registerMaterialMappingAlgorithm ( MaterialMappingAlgorithmType name,
std::unique_ptr< MaterialMappingAlgorithm >(* creator )() )

Definition at line 471 of file classfactory.C.

References oofem::cf_store2(), and materialMappingList.

◆ registerMesherInterface()

bool oofem::ClassFactory::registerMesherInterface ( MeshPackageType name,
std::unique_ptr< MesherInterface >(* creator )(Domain *) )

Definition at line 481 of file classfactory.C.

References oofem::cf_store2(), and mesherInterfaceList.

◆ registerMonitor()

bool oofem::ClassFactory::registerMonitor ( const char * name,
std::unique_ptr< Monitor >(* creator )(int) )

Registers a new monitor in the class factory.

Parameters
nameKeyword string.

Definition at line 307 of file classfactory.C.

References oofem::cf_store(), and monitorList.

◆ registerNodalRecoveryModel()

bool oofem::ClassFactory::registerNodalRecoveryModel ( NodalRecoveryModel ::NodalRecoveryModelType name,
std::unique_ptr< NodalRecoveryModel >(* creator )(Domain *) )

Registers a new nodal recovery model.

Parameters
nameIndentifier.

Definition at line 188 of file classfactory.C.

References oofem::cf_store2(), and nodalRecoveryModelList.

◆ registerNonlocalBarrier()

bool oofem::ClassFactory::registerNonlocalBarrier ( const char * name,
std::unique_ptr< NonlocalBarrier >(* creator )(int, Domain *) )

Registers a new nonlocal barrier in the class factory.

Parameters
nameKeyword string.

Definition at line 287 of file classfactory.C.

References oofem::cf_store(), and nlbList.

◆ registerNucleationCriterion()

bool oofem::ClassFactory::registerNucleationCriterion ( const char * name,
std::unique_ptr< NucleationCriterion >(* creator )(Domain *) )

Definition at line 359 of file classfactory.C.

References oofem::cf_store(), and nucleationCritList.

◆ registerPropagationLaw()

bool oofem::ClassFactory::registerPropagationLaw ( const char * name,
std::unique_ptr< PropagationLaw >(* creator )() )

Definition at line 401 of file classfactory.C.

References oofem::cf_store(), and propagationLawList.

◆ registerSparseLinSolver()

bool oofem::ClassFactory::registerSparseLinSolver ( LinSystSolverType type,
std::unique_ptr< SparseLinearSystemNM >(* creator )(Domain *, EngngModel *) )

Registers a sparse linear system solver.

Parameters
typeLinSystSolverType id determining the type of new instance.

Definition at line 165 of file classfactory.C.

References oofem::cf_store2(), and sparseLinSolList.

◆ registerSparseMtrx()

bool oofem::ClassFactory::registerSparseMtrx ( SparseMtrxType type,
std::unique_ptr< SparseMtrx >(* creator )(void) )

Registers a sparse matrix type.

Parameters
typeSparseMtrxType id determining the type of new instance.

Definition at line 150 of file classfactory.C.

References oofem::cf_store2(), and sparseMtrxList.

◆ registerSparseNonLinearSystemNM()

bool oofem::ClassFactory::registerSparseNonLinearSystemNM ( const char * name,
std::unique_ptr< SparseNonLinearSystemNM >(* creator )(Domain *, EngngModel *) )

Registers a new nonlinear solver in the class factory.

Parameters
nameKeyword string.

Definition at line 317 of file classfactory.C.

References oofem::cf_store(), and nonlinList.

◆ registerTerm()

bool oofem::ClassFactory::registerTerm ( const char * name,
std::unique_ptr< Term >(* creator )() )

Definition at line 531 of file classfactory.C.

References oofem::cf_store(), and termList.

◆ registerTimeStepReductionStrategy()

bool oofem::ClassFactory::registerTimeStepReductionStrategy ( const char * name,
std::unique_ptr< TimeStepReductionStrategy >(* creator )(int) )

Definition at line 518 of file classfactory.C.

References oofem::cf_store(), and timeStepReductionStrategyList.

◆ registerTopologyDescription()

bool oofem::ClassFactory::registerTopologyDescription ( const char * name,
std::unique_ptr< TopologyDescription >(* creator )(Domain *) )

Registers a new topology description in the class factory.

Parameters
nameKeyword string.

Definition at line 337 of file classfactory.C.

References oofem::cf_store(), and topologyList.

◆ registerXfemManager()

bool oofem::ClassFactory::registerXfemManager ( const char * name,
std::unique_ptr< XfemManager >(* creator )(Domain *) )

Definition at line 421 of file classfactory.C.

References oofem::cf_store(), and xManList.

Member Data Documentation

◆ bcList

std :: map< std :: string, std::unique_ptr<GeneralBoundaryCondition>( * )(int, Domain *) > oofem::ClassFactory::bcList
private

Associative container containing boundary condition creators with bc name as key.

Definition at line 199 of file classfactory.h.

Referenced by createBoundaryCondition(), getRegisteredNames(), and registerBoundaryCondition().

◆ contactSurfaceList

std::map< std::string, std::unique_ptr< ContactSurface >( * )( int, Domain * ) > oofem::ClassFactory::contactSurfaceList
private

Associative container containing contact surface creators with name as key.

Definition at line 269 of file classfactory.h.

Referenced by createContactSurface(), getRegisteredNames(), and registerContactSurface().

◆ csList

std :: map< std :: string, std::unique_ptr<CrossSection>( * )(int, Domain *) > oofem::ClassFactory::csList
private

Associative container containing cross section creators with cross section name as key.

Definition at line 201 of file classfactory.h.

Referenced by createCrossSection(), getRegisteredNames(), and registerCrossSection().

◆ dofList

std :: map< dofType, Dof * ( * )(DofIDItem, DofManager *) > oofem::ClassFactory::dofList
private

Associative container containing dof creators.

Definition at line 228 of file classfactory.h.

Referenced by ClassFactory(), createDof(), and getRegisteredNames().

◆ dofmanList

std :: map< std :: string, std::unique_ptr<DofManager>( * )(int, Domain *) > oofem::ClassFactory::dofmanList
private

Associative container containing dofmanager creators with dofmanager name as key.

Definition at line 197 of file classfactory.h.

Referenced by createDofManager(), getRegisteredNames(), and registerDofManager().

◆ elemList

std :: map< std :: string, std::unique_ptr<Element>( * )(int, Domain *) > oofem::ClassFactory::elemList
private

Associative container containing element creators with element name as key.

Definition at line 195 of file classfactory.h.

Referenced by createElement(), getRegisteredNames(), and registerElement().

◆ engngList

std :: map< std :: string, std::unique_ptr<EngngModel>( * )(int, EngngModel *) > oofem::ClassFactory::engngList
private

Associative container containing engng model creators with engng model name as key.

Definition at line 205 of file classfactory.h.

Referenced by createEngngModel(), getRegisteredNames(), and registerEngngModel().

◆ enrichFuncList

std :: map< std :: string, std::unique_ptr<EnrichmentFunction>( * )(int, Domain *) > oofem::ClassFactory::enrichFuncList
private

Associative container containing enrichment function creators.

Definition at line 248 of file classfactory.h.

Referenced by createEnrichmentFunction(), getRegisteredNames(), and registerEnrichmentFunction().

◆ enrichItemList

std :: map< std :: string, std::unique_ptr<EnrichmentItem>( * )(int, XfemManager *, Domain *) > oofem::ClassFactory::enrichItemList
private

Associative container containing enrichment item creators.

Definition at line 244 of file classfactory.h.

Referenced by createEnrichmentItem(), and registerEnrichmentItem().

◆ enrichmentDomainList

std :: map< std :: string, std::unique_ptr<EnrichmentDomain>( * )() > oofem::ClassFactory::enrichmentDomainList
private

Associative container containing enrichment-domain creators.

Definition at line 252 of file classfactory.h.

◆ enrichmentFrontList

std :: map< std :: string, std::unique_ptr<EnrichmentFront>( * )() > oofem::ClassFactory::enrichmentFrontList
private

Associative container containing enrichment front creators.

Definition at line 254 of file classfactory.h.

Referenced by createEnrichmentFront(), getRegisteredNames(), and registerEnrichmentFront().

◆ errEstList

std :: map< ErrorEstimatorType, std::unique_ptr<ErrorEstimator>( * )(int, Domain *) > oofem::ClassFactory::errEstList
private

Associative container containing error estimator creators.

Definition at line 230 of file classfactory.h.

Referenced by createErrorEstimator(), getRegisteredNames(), and registerErrorEstimator().

◆ exportList

std :: map< std :: string, std::unique_ptr<ExportModule>( * )(int, EngngModel *) > oofem::ClassFactory::exportList
private

Associative container containing export module creators.

Definition at line 211 of file classfactory.h.

Referenced by createExportModule(), getRegisteredNames(), and registerExportModule().

◆ failureCriteriaList

std :: map< std :: string, std::unique_ptr<FailureCriteria>( * )(int, FractureManager *) > oofem::ClassFactory::failureCriteriaList
private

Associative container containing failure criteria creators.

Definition at line 262 of file classfactory.h.

Referenced by createFailureCriteria(), getRegisteredNames(), and registerFailureCriteria().

◆ failureCriteriaStatusList

std :: map< std :: string, std::unique_ptr<FailureCriteriaStatus>( * )(int, FailureCriteria *) > oofem::ClassFactory::failureCriteriaStatusList
private

◆ fieldList

std :: map< std :: string, std::unique_ptr<Field>( * )() > oofem::ClassFactory::fieldList
private

Associative container containing Field creators.

Definition at line 272 of file classfactory.h.

Referenced by createField(), getRegisteredNames(), and registerField().

◆ funcList

std :: map< std :: string, std::unique_ptr<Function>( * )(int, Domain *) > oofem::ClassFactory::funcList
private

Associative container containing load time function creators with function name as key.

Definition at line 207 of file classfactory.h.

Referenced by createFunction(), getRegisteredNames(), and registerFunction().

◆ generalizedEigenValueSolverList

std :: map< GenEigvalSolverType, std::unique_ptr<SparseGeneralEigenValueSystemNM>( * )(Domain *, EngngModel *) > oofem::ClassFactory::generalizedEigenValueSolverList
private

Associative container containing sparse generalized eigenvalue creators.

Definition at line 236 of file classfactory.h.

Referenced by createGeneralizedEigenValueSolver(), getRegisteredNames(), and registerGeneralizedEigenValueSolver().

◆ geometryList

std :: map< std :: string, std::unique_ptr<BasicGeometry>( * )() > oofem::ClassFactory::geometryList
private

Associative container containing geometry creators.

Definition at line 250 of file classfactory.h.

Referenced by createGeometry(), getRegisteredNames(), and registerGeometry().

◆ initList

std :: map< std :: string, std::unique_ptr<InitModule>( * )(int, EngngModel *) > oofem::ClassFactory::initList
private

Associative container containing init module creators.

Definition at line 217 of file classfactory.h.

Referenced by createInitModule(), getRegisteredNames(), and registerInitModule().

◆ loadBalancerList

std :: map< std :: string, std::unique_ptr<LoadBalancer>( * )(Domain *) > oofem::ClassFactory::loadBalancerList
private

Associative container containing load balancer creators.

Definition at line 222 of file classfactory.h.

Referenced by createLoadBalancer(), getRegisteredNames(), and registerLoadBalancer().

◆ loadMonitorList

std :: map< std :: string, std::unique_ptr<LoadBalancerMonitor>( * )(EngngModel *) > oofem::ClassFactory::loadMonitorList
private

Associative container containing load balancer monitor creators.

Definition at line 224 of file classfactory.h.

Referenced by createLoadBalancerMonitor(), getRegisteredNames(), and registerLoadBalancerMonitor().

◆ materialMappingList

std :: map< MaterialMappingAlgorithmType, std::unique_ptr<MaterialMappingAlgorithm>( * )() > oofem::ClassFactory::materialMappingList
private

Associative container containing material mapping algorithm creators.

Definition at line 238 of file classfactory.h.

Referenced by createMaterialMappingAlgorithm(), getRegisteredNames(), and registerMaterialMappingAlgorithm().

◆ matList

std :: map< std :: string, std::unique_ptr<Material>( * )(int, Domain *) > oofem::ClassFactory::matList
private

Associative container containing material creators with material name as key.

Definition at line 203 of file classfactory.h.

Referenced by createMaterial(), getRegisteredNames(), and registerMaterial().

◆ mesherInterfaceList

std :: map< MeshPackageType, std::unique_ptr<MesherInterface>( * )(Domain *) > oofem::ClassFactory::mesherInterfaceList
private

Associative container containing mesher interface creators.

Definition at line 240 of file classfactory.h.

Referenced by createMesherInterface(), getRegisteredNames(), and registerMesherInterface().

◆ monitorList

std :: map< std :: string, std::unique_ptr<Monitor>( * )(int) > oofem::ClassFactory::monitorList
private

Associative container containing monitor creators.

Definition at line 213 of file classfactory.h.

Referenced by createMonitor(), getRegisteredNames(), and registerMonitor().

◆ nlbList

std :: map< std :: string, std::unique_ptr<NonlocalBarrier>( * )(int, Domain *) > oofem::ClassFactory::nlbList
private

Associative container containing nonlocal barriers creators with barrier name as key.

Definition at line 209 of file classfactory.h.

Referenced by createNonlocalBarrier(), getRegisteredNames(), and registerNonlocalBarrier().

◆ nodalRecoveryModelList

std :: map< NodalRecoveryModel :: NodalRecoveryModelType, std::unique_ptr<NodalRecoveryModel>( * )(Domain *) > oofem::ClassFactory::nodalRecoveryModelList
private

Associative container containing nodal recovery model creators.

Definition at line 234 of file classfactory.h.

Referenced by createNodalRecoveryModel(), getRegisteredNames(), and registerNodalRecoveryModel().

◆ nonlinList

std :: map< std :: string, std::unique_ptr<SparseNonLinearSystemNM>( * )(Domain *, EngngModel *) > oofem::ClassFactory::nonlinList
private

Associative container containing nonlinear solver creators.

Definition at line 215 of file classfactory.h.

Referenced by createNonLinearSolver(), getRegisteredNames(), and registerSparseNonLinearSystemNM().

◆ nucleationCritList

std :: map< std :: string, std::unique_ptr<NucleationCriterion>( * )(Domain *) > oofem::ClassFactory::nucleationCritList
private

Associative container containing nucleation criterion creators.

Definition at line 246 of file classfactory.h.

Referenced by createNucleationCriterion(), and registerNucleationCriterion().

◆ propagationLawList

std :: map< std :: string, std::unique_ptr<PropagationLaw>( * )() > oofem::ClassFactory::propagationLawList
private

Associative container containing propagation law creators.

Definition at line 256 of file classfactory.h.

Referenced by createPropagationLaw(), getRegisteredNames(), and registerPropagationLaw().

◆ sparseLinSolList

std :: map< LinSystSolverType, std::unique_ptr<SparseLinearSystemNM>( * )(Domain *, EngngModel *) > oofem::ClassFactory::sparseLinSolList
private

Associative container containing sparse linear solver creators.

Definition at line 232 of file classfactory.h.

Referenced by createSparseLinSolver(), getRegisteredNames(), and registerSparseLinSolver().

◆ sparseMtrxList

std :: map< SparseMtrxType, std::unique_ptr<SparseMtrx>( * )() > oofem::ClassFactory::sparseMtrxList
private

Associative container containing sparse matrix creators.

Definition at line 226 of file classfactory.h.

Referenced by createSparseMtrx(), getRegisteredNames(), and registerSparseMtrx().

◆ termList

std :: map< std :: string, std::unique_ptr<Term>( * )() > oofem::ClassFactory::termList
private

MPM stuff.

Definition at line 275 of file classfactory.h.

Referenced by createTerm(), getRegisteredNames(), and registerTerm().

◆ timeStepReductionStrategyList

std :: map< std :: string, std::unique_ptr<TimeStepReductionStrategy>( * )(int) > oofem::ClassFactory::timeStepReductionStrategyList
private

Associative container containing TimeStepReductionStrategy.

Definition at line 266 of file classfactory.h.

Referenced by createTimeStepReductionStrategy(), and registerTimeStepReductionStrategy().

◆ topologyList

std :: map< std :: string, std::unique_ptr<TopologyDescription>( * )(Domain *) > oofem::ClassFactory::topologyList
private

Associative container containing topology description creators.

Definition at line 219 of file classfactory.h.

Referenced by createTopology(), getRegisteredNames(), and registerTopologyDescription().

◆ xManList

std :: map< std :: string, std::unique_ptr<XfemManager>( * )(Domain *) > oofem::ClassFactory::xManList
private

Associative container containing XfemManager creators.

Definition at line 258 of file classfactory.h.

Referenced by createXfemManager(), getRegisteredNames(), and registerXfemManager().


The documentation for this class was generated from the following files:

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011