6#ifndef REACTOR_FACTORY_H
7#define REACTOR_FACTORY_H
25class ReactorFactory :
public Factory<ReactorBase, shared_ptr<Solution>, bool, const string&>
28 static ReactorFactory* factory();
33 static ReactorFactory* s_factory;
34 static std::mutex reactor_mutex;
52 const string& model, shared_ptr<Solution> phase,
bool clone=
true,
53 const string& name=
"(none)");
61 const string& model, shared_ptr<Solution> phase,
const string& name=
"(none)");
74 const string& model, shared_ptr<Solution> phase,
bool clone=
true,
75 const string& name=
"(none)");
85 shared_ptr<Solution> phase,
bool clone=
true,
const string& name=
"(none)");
99 shared_ptr<Solution> phase,
const vector<shared_ptr<ReactorBase>>& reactors,
100 bool clone=
true,
const string& name=
"(none)");
File contains the FactoryBase class declarations.
Factory class that supports registering functions to create objects.
void deleteFactory() override
Virtual abstract function that deletes the factory.
Class Reactor is a general-purpose class for stirred reactors.
A source or sink whose state remains constant regardless of any flows or other interactions with othe...
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< ReactorBase > newReactor(const string &model, shared_ptr< Solution > phase, const string &name)
Create a Reactor object of the specified type and contents.
shared_ptr< Reactor > newReactor4(const string &model, shared_ptr< Solution > phase, bool clone, const string &name)
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.