41#ifndef chemistryReader_H
42#define chemistryReader_H
61template<
class ThermoType>
139#define makeChemistryReader(Thermo) \
140 defineTemplateTypeNameAndDebug(chemistryReader<Thermo>, 0); \
141 defineTemplateRunTimeSelectionTable(chemistryReader<Thermo>, dictionary)
144#define makeChemistryReaderType(Reader, Thermo) \
145 defineNamedTemplateTypeNameAndDebug(Reader<Thermo>, 0); \
146 chemistryReader<Thermo>::adddictionaryConstructorToTable<Reader<Thermo>> \
147 add##Reader##Thermo##ConstructorToTable_
151#define addChemistryReaderType(Reader, Thermo) \
152 defineTypeNameAndDebug(Reader, 0); \
153 chemistryReader<Thermo>::adddictionaryConstructorToTable<Reader> \
154 add##Reader##Thermo##ConstructorToTable_
158#define addTemplateChemistryReaderType(Reader, Thermo) \
159 defineNamedTemplateTypeNameAndDebug(Reader, 0); \
160 chemistryReader<Thermo>::adddictionaryConstructorToTable<Reader> \
161 add##Reader##Thermo##ConstructorToTable_
A HashTable similar to std::unordered_map.
List of templated reactions.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Abstract class for reading chemistry.
virtual ~chemistryReader()=default
Destructor.
ThermoType thermoType
The type of thermo package the reader was instantiated for.
TypeName("chemistryReader")
Runtime type information.
virtual const speciesCompositionTable & specieComposition() const =0
Table of species composition.
virtual const speciesTable & species() const =0
Return access to the list of species.
virtual const ReactionList< ThermoType > & reactions() const =0
Return access to the list of reactions.
virtual const ReactionTable< ThermoType > & speciesThermo() const =0
Return access to the thermo packages.
declareRunTimeSelectionTable(autoPtr, chemistryReader, dictionary,(const dictionary &thermoDict, speciesTable &species),(thermoDict, species))
static autoPtr< chemistryReader > New(const dictionary &thermoDict, speciesTable &species)
Select constructed from dictionary.
chemistryReader()
Default construct.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
A wordList with hashed named lookup, which can be faster in some situations than using the normal lis...
const dictionary & thermoDict
HashTable< List< specieElement > > speciesCompositionTable
Macros to ease declaration of run-time selection tables.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.