Merge /u/wyldckat/foam-extend32/ branch master into master
[foam-extend-3.2.git] / src / lagrangian / coalCombustion / include / createCoalParcelTypes.H
blobd741d5f2fcba6cdb9ed59801834f9879cc735e5a
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 \*---------------------------------------------------------------------------*/
26 #ifndef createCoalParcelTypes_H
27 #define createCoalParcelTypes_H
29 #include "thermoPhysicsTypes.H"
30 #include "CoalCloud.H"
32 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
34 #define createCoalParcelType(ParcelType)                                      \
35                                                                               \
36     createCoalParcelThermoType(ParcelType, constGasThermoPhysics);            \
37     createCoalParcelThermoType(ParcelType, gasThermoPhysics);                 \
38     createCoalParcelThermoType(ParcelType, icoPoly8ThermoPhysics);
41 #define createCoalParcelThermoType(ParcelType, ThermoType)                    \
42                                                                               \
43     typedef ParcelType<ThermoType> ParcelType##ThermoType;                    \
44                                                                               \
45     defineTemplateTypeNameAndDebug(ParcelType##ThermoType, 0);                \
46     defineTemplateTypeNameAndDebug(Particle<ParcelType##ThermoType>, 0);      \
47     defineTemplateTypeNameAndDebug(Cloud<ParcelType##ThermoType>, 0);         \
48                                                                               \
49     defineParcelTypeNameAndDebug(KinematicParcel<ParcelType##ThermoType>, 0); \
50     defineTemplateTypeNameAndDebug                                            \
51     (                                                                         \
52         KinematicParcel<ParcelType##ThermoType>,                              \
53         0                                                                     \
54     );                                                                        \
55     defineParcelTypeNameAndDebug(ThermoParcel<ParcelType##ThermoType>, 0);    \
56     defineTemplateTypeNameAndDebug(ThermoParcel<ParcelType##ThermoType>, 0);  \
57     defineParcelTypeNameAndDebug(ReactingParcel<ParcelType##ThermoType>, 0);  \
58     defineTemplateTypeNameAndDebug(ReactingParcel<ParcelType##ThermoType>, 0);\
59     defineParcelTypeNameAndDebug                                              \
60     (                                                                         \
61         ReactingMultiphaseParcel<ParcelType##ThermoType>,                     \
62         0                                                                     \
63     );                                                                        \
64     defineTemplateTypeNameAndDebug                                            \
65     (                                                                         \
66         ReactingMultiphaseParcel<ParcelType##ThermoType>,                     \
67         0                                                                     \
68     );                                                                        \
69     defineParcelTypeNameAndDebug(CoalParcel<ParcelType##ThermoType>, 0);      \
70     defineTemplateTypeNameAndDebug(CoalParcel<ParcelType##ThermoType>, 0);    \
71                                                                               \
72     defineParcelTypeNameAndDebug(KinematicCloud<ParcelType##ThermoType>, 0);  \
73     defineParcelTypeNameAndDebug(ThermoCloud<ParcelType##ThermoType>, 0);     \
74     defineParcelTypeNameAndDebug(ReactingCloud<ParcelType##ThermoType>, 0);   \
75     defineParcelTypeNameAndDebug                                              \
76     (                                                                         \
77         ReactingMultiphaseCloud<ParcelType##ThermoType>,                      \
78         0                                                                     \
79     );
82 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
84 #endif
86 // ************************************************************************* //