Merge branch 'master' of ssh://git.code.sf.net/p/foam-extend/foam-extend-3.2
[foam-extend-3.2.git] / src / thermophysicalModels / reactionThermo / combustionThermo / hCombustionThermo / makeCombustionThermo.H
blobc61716d59774d7bf97f89ae29beb3f0dadf77ff5
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | foam-extend: Open Source CFD
4    \\    /   O peration     | Version:     3.2
5     \\  /    A nd           | Web:         http://www.foam-extend.org
6      \\/     M anipulation  | For copyright notice see file Copyright
7 -------------------------------------------------------------------------------
8 License
9     This file is part of foam-extend.
11     foam-extend is free software: you can redistribute it and/or modify it
12     under the terms of the GNU General Public License as published by the
13     Free Software Foundation, either version 3 of the License, or (at your
14     option) any later version.
16     foam-extend is distributed in the hope that it will be useful, but
17     WITHOUT ANY WARRANTY; without even the implied warranty of
18     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19     General Public License for more details.
21     You should have received a copy of the GNU General Public License
22     along with foam-extend.  If not, see <http://www.gnu.org/licenses/>.
24 InClass
25     Foam::hCombustionThermo
27 Description
29 \*---------------------------------------------------------------------------*/
31 #ifndef makeCombustionThermo_H
32 #define makeCombustionThermo_H
34 #include "addToRunTimeSelectionTable.H"
35 #include "basicPsiThermo.H"
37 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
39 #define makeCombustionThermo(CThermo,MixtureThermo,Mixture,Transport,Thermo,EqnOfState) \
40                                                                               \
41 typedef MixtureThermo                                                         \
42     <Mixture<Transport<specieThermo<Thermo<EqnOfState> > > > >                \
43     MixtureThermo##Mixture##Transport##Thermo##EqnOfState;                    \
44                                                                               \
45 defineTemplateTypeNameAndDebugWithName                                        \
46 (                                                                             \
47     MixtureThermo##Mixture##Transport##Thermo##EqnOfState,                    \
48     #MixtureThermo                                                            \
49         "<"#Mixture"<"#Transport"<specieThermo<"#Thermo"<"#EqnOfState">>>>>", \
50     0                                                                         \
51 );                                                                            \
52                                                                               \
53 addToRunTimeSelectionTable                                                    \
54 (                                                                             \
55     basicPsiThermo,                                                           \
56     MixtureThermo##Mixture##Transport##Thermo##EqnOfState,                    \
57     fvMesh                                                                    \
58 );                                                                            \
59                                                                               \
60 addToRunTimeSelectionTable                                                    \
61 (                                                                             \
62     CThermo,                                                                  \
63     MixtureThermo##Mixture##Transport##Thermo##EqnOfState,                    \
64     fvMesh                                                                    \
68 #define makeCombustionMixtureThermo(CThermo,MixtureThermo,Mixture,ThermoPhys) \
69                                                                               \
70 typedef MixtureThermo<Mixture<ThermoPhys> >                                   \
71     MixtureThermo##Mixture##ThermoPhys;                                       \
72                                                                               \
73 defineTemplateTypeNameAndDebugWithName                                        \
74 (                                                                             \
75     MixtureThermo##Mixture##ThermoPhys,                                       \
76     #MixtureThermo"<"#Mixture"<"#ThermoPhys">>",                              \
77     0                                                                         \
78 );                                                                            \
79                                                                               \
80 addToRunTimeSelectionTable                                                    \
81 (                                                                             \
82     basicPsiThermo,                                                           \
83     MixtureThermo##Mixture##ThermoPhys,                                       \
84     fvMesh                                                                    \
85 );                                                                            \
86                                                                               \
87 addToRunTimeSelectionTable                                                    \
88 (                                                                             \
89     CThermo,                                                                  \
90     MixtureThermo##Mixture##ThermoPhys,                                       \
91     fvMesh                                                                    \
95 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
97 #endif
99 // ************************************************************************* //