6#ifndef REACTOR_FACTORY_H
7#define REACTOR_FACTORY_H
34 static std::mutex reactor_mutex;
48 shared_ptr<Solution> ,
49 const vector<shared_ptr<ReactorBase>>& ,
50 bool , const string& >
58 static std::mutex s_mutex;
76 const string& model, shared_ptr<Solution> phase,
bool clone=
true,
77 const string& name=
"(none)");
91 const string& model, shared_ptr<Solution> phase,
bool clone=
true,
92 const string& name=
"(none)");
96inline shared_ptr<Reactor>
newReactor4(
const string& model, shared_ptr<Solution> phase,
97 bool clone=
true,
const string& name=
"(none)")
110 shared_ptr<Solution> phase,
bool clone=
true,
const string& name=
"(none)");
128 shared_ptr<Solution> phase,
const vector<shared_ptr<ReactorBase>>& reactors,
129 bool clone=
true,
const string& name=
"(none)");
144 const string& model, shared_ptr<Solution> phase,
145 const vector<shared_ptr<ReactorBase>>& reactors,
146 bool clone=
true,
const string& name=
"(none)");
File contains the FactoryBase class declarations.
Factory class that supports registering functions to create objects.
Factory class to create reactor objects.
void deleteFactory() override
Virtual abstract function that deletes the factory.
Factory class to create ReactorSurface objects.
void deleteFactory() override
Virtual abstract function that deletes the factory.
shared_ptr< Reactor > newReactor(const string &model, shared_ptr< Solution > phase, bool clone, const string &name)
Create a Reactor object of the specified type and contents.
shared_ptr< ReactorBase > newReactorBase(const string &model, shared_ptr< Solution > phase, bool clone, const string &name)
Create a ReactorBase object of the specified type and contents.
shared_ptr< Reactor > newReactor4(const string &model, shared_ptr< Solution > phase, bool clone=true, const string &name="(none)")
Create a Reactor object of the specified type and contents.
shared_ptr< Reservoir > newReservoir(shared_ptr< Solution > phase, bool clone, const string &name)
Create a Reservoir object with the specified contents.
shared_ptr< ReactorSurface > newReactorSurface(shared_ptr< Solution > phase, const vector< shared_ptr< ReactorBase > > &reactors, bool clone, const string &name)
Create a ReactorSurface object with the specified contents and adjacent reactors participating in sur...
Namespace for the Cantera kernel.