8#ifndef KINETICS_FACTORY_H
9#define KINETICS_FACTORY_H
36 static std::mutex kinetics_mutex;
51shared_ptr<Kinetics>
newKinetics(
const string& model);
65shared_ptr<Kinetics>
newKinetics(
const vector<shared_ptr<ThermoPhase>>& phases,
68 shared_ptr<Solution> soln={});
74unique_ptr<Kinetics>
newKinetics(
const vector<ThermoPhase*>& phases,
75 const AnyMap& phaseNode,
76 const AnyMap& rootNode=AnyMap());
93shared_ptr<Kinetics>
newKinetics(
const vector<shared_ptr<ThermoPhase>>& phases,
94 const string& filename,
95 const string& phase_name=
"");
100unique_ptr<Kinetics>
newKinetics(
const vector<ThermoPhase*>& phases,
101 const string& filename,
102 const string& phase_name);
114void addReactions(Kinetics& kin,
const AnyMap& phaseNode,
115 const AnyMap& rootNode=AnyMap());
File contains the FactoryBase class declarations.
Base class for kinetics managers and also contains the kineticsmgr module documentation (see Kinetics...
A map of string keys to values whose type can vary at runtime.
Factory class that supports registering functions to create objects.
Factory for kinetics managers.
void deleteFactory() override
Virtual abstract function that deletes the factory.
Kinetics * newKinetics(const string &model)
Return a new, empty kinetics manager.
Public interface for kinetics managers.
Kinetics * newKineticsMgr(const string &model)
Create a new kinetics manager.
shared_ptr< Kinetics > newKinetics(const string &model)
Create a new Kinetics instance.
void addReactions(Kinetics &kin, const AnyMap &phaseNode, const AnyMap &rootNode)
Add reactions to a Kinetics object.
Namespace for the Cantera kernel.