Cantera 2.6.0
Public Member Functions | Static Public Member Functions | Static Private Attributes | List of all members
KineticsFactory Class Reference

Factory for kinetics managers. More...

#include <KineticsFactory.h>

Inheritance diagram for KineticsFactory:
[legend]
Collaboration diagram for KineticsFactory:
[legend]

Public Member Functions

virtual void deleteFactory ()
 Virtual abstract function that deletes the factory. More...
 
virtual KineticsnewKinetics (XML_Node &phase, std::vector< ThermoPhase * > th)
 Return a new kinetics manager that implements a reaction mechanism specified in a CTML file. More...
 
virtual KineticsnewKinetics (const std::string &model)
 Return a new, empty kinetics manager. More...
 
- Public Member Functions inherited from Factory< Kinetics >
Kineticscreate (const std::string &name, Args... args)
 Create an object using the object construction function corresponding to "name" and the provided constructor arguments. More...
 
void reg (const std::string &name, std::function< Kinetics *(Args...)> f)
 Register a new object construction function. More...
 
void addAlias (const std::string &original, const std::string &alias)
 Add an alias for an existing registered type. More...
 
std::string canonicalize (const std::string &name)
 Get the canonical name registered for a type. More...
 
bool exists (const std::string &name) const
 Returns true if name is registered with this factory. More...
 
- Public Member Functions inherited from FactoryBase
virtual ~FactoryBase ()
 destructor More...
 

Static Public Member Functions

static KineticsFactoryfactory ()
 
- Static Public Member Functions inherited from FactoryBase
static void deleteFactories ()
 static function that deletes all factories in the internal registry maintained in a static variable More...
 

Static Private Attributes

static KineticsFactorys_factory = 0
 
static std::mutex kinetics_mutex
 

Additional Inherited Members

- Protected Member Functions inherited from Factory< Kinetics >
void addDeprecatedAlias (const std::string &original, const std::string &alias)
 Add a deprecated alias for an existing registered type. More...
 
- Protected Member Functions inherited from FactoryBase
 FactoryBase ()
 Constructor. More...
 

Detailed Description

Factory for kinetics managers.

Definition at line 34 of file KineticsFactory.h.

Constructor & Destructor Documentation

◆ KineticsFactory()

KineticsFactory ( )
private

Definition at line 43 of file KineticsFactory.cpp.

Member Function Documentation

◆ factory()

static KineticsFactory * factory ( )
inlinestatic

Definition at line 37 of file KineticsFactory.h.

◆ deleteFactory()

virtual void deleteFactory ( )
inlinevirtual

Virtual abstract function that deletes the factory.

This must be properly defined in child objects.

Implements FactoryBase.

Definition at line 45 of file KineticsFactory.h.

◆ newKinetics() [1/2]

Kinetics * newKinetics ( XML_Node phase,
std::vector< ThermoPhase * >  th 
)
virtual

Return a new kinetics manager that implements a reaction mechanism specified in a CTML file.

In other words, the kinetics manager, given the rate constants and formulation of the reactions that make up a kinetics mechanism, is responsible for calculating the rates of progress of the reactions and for calculating the source terms for species.

Parameters
phaseAn XML_Node that contains the XML data describing the phase. Of particular note to this routine is the child XML element called "kinetics". The element has one attribute called "model", with a string value. The value of this string is used to decide which kinetics manager is used to calculate the reaction mechanism.
thVector of phases. The first phase is the phase in which the reactions occur, and the subsequent phases (if any) are for example bulk phases adjacent to a reacting surface.
Returns
Pointer to the new kinetics manager.
Deprecated:
The XML input format is deprecated and will be removed in Cantera 3.0.

Definition at line 25 of file KineticsFactory.cpp.

References XML_Node::child(), Cantera::importKinetics(), and KineticsFactory::newKinetics().

Referenced by KineticsFactory::newKinetics().

◆ newKinetics() [2/2]

Kinetics * newKinetics ( const std::string &  model)
virtual

Return a new, empty kinetics manager.

Definition at line 58 of file KineticsFactory.cpp.

References Factory< Kinetics >::create(), and Cantera::toLowerCopy().

Member Data Documentation

◆ s_factory

KineticsFactory * s_factory = 0
staticprivate

Definition at line 81 of file KineticsFactory.h.

◆ kinetics_mutex

std::mutex kinetics_mutex
staticprivate

Definition at line 83 of file KineticsFactory.h.


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