BUG: UListIO: byteSize overflowing on really big faceLists
[OpenFOAM-2.0.x.git] / src / lagrangian / intermediate / submodels / ReactingMultiphase / InjectionModel / ReactingMultiphaseLookupTableInjection / reactingMultiphaseParcelInjectionData.H
blob4875a68d1f6f322e28534d8a1118dad8bdeac045
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
9     This file is part of OpenFOAM.
11     OpenFOAM is free software: you can redistribute it and/or modify it
12     under the terms of the GNU General Public License as published by
13     the Free Software Foundation, either version 3 of the License, or
14     (at your option) any later version.
16     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
19     for more details.
21     You should have received a copy of the GNU General Public License
22     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
24 Class
25     Foam::reactingMultiphaseParcelInjectionData
27 Description
28     Container class to provide injection data for reacting multiphase parcels
30 SourceFiles
31     reactingMultiphaseParcelInjectionData.C
33 \*---------------------------------------------------------------------------*/
35 #ifndef reactingMultiphaseParcelInjectionData_H
36 #define reactingMultiphaseParcelInjectionData_H
38 #include "reactingParcelInjectionData.H"
40 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
42 namespace Foam
45 // Forward declaration of classes
46 class reactingMultiphaseParcelInjectionData;
48 // Forward declaration of friend functions
50 Ostream& operator<<
52     Ostream&,
53     const reactingMultiphaseParcelInjectionData&
56 Istream& operator>>
58     Istream&,
59     reactingMultiphaseParcelInjectionData&
62 /*---------------------------------------------------------------------------*\
63             Class reactingMultiphaseParcelInjectionData Declaration
64 \*---------------------------------------------------------------------------*/
66 class reactingMultiphaseParcelInjectionData
68     public reactingParcelInjectionData
70 protected:
72     // Parcel properties
74         //- List of gaseous mass fractions
75         scalarList YGas_;
77         //- List of liquid mass fractions
78         scalarList YLiquid_;
80         //- List of solid mass fractions
81         scalarList YSolid_;
84 public:
86     //- Runtime type information
87     TypeName("reactingMultiphaseParcelInjectionData");
89     // Constructors
91         //- Null constructor
92         reactingMultiphaseParcelInjectionData();
94         //- Construct from dictionary
95         reactingMultiphaseParcelInjectionData(const dictionary& dict);
97         //- Construct from Istream
98         reactingMultiphaseParcelInjectionData(Istream& is);
101     //-Destructor
102     virtual ~reactingMultiphaseParcelInjectionData();
105     // Access
107         //- Return const access to the list of gaseous mass fractions
108         inline const scalarList& YGas() const;
110         //- Return const access to the list of liquid mass fractions
111         inline const scalarList& YLiquid() const;
113         //- Return const access to the list of solid mass fractions
114         inline const scalarList& YSolid() const;
117     // Edit
119         //- Return access to the gaseous mass fractions
120         inline scalarList& YGas();
122         //- Return access to the liquid mass fractions
123         inline scalarList& YLiquid();
125         //- Return access to the solid mass fractions
126         inline scalarList& YSolid();
129     // I-O
131         // Friend Operators
133             friend bool operator==
134             (
135                 const reactingMultiphaseParcelInjectionData& a,
136                 const reactingMultiphaseParcelInjectionData& b
137             )
138             {
139                 notImplemented
140                 (
141                     "operator=="
142                     "("
143                         "const reactingMultiphaseParcelInjectionData&, "
144                         "const reactingMultiphaseParcelInjectionData&"
145                     ")"
146                 );
148                 return false;
149             }
151             friend bool operator!=
152             (
153                 const reactingMultiphaseParcelInjectionData& a,
154                 const reactingMultiphaseParcelInjectionData& b
155             )
156             {
157                 notImplemented
158                 (
159                     "operator=="
160                     "("
161                         "const reactingMultiphaseParcelInjectionData&, "
162                         "const reactingMultiphaseParcelInjectionData&"
163                     ")"
164                 );
166                 return false;
167             }
169             //- Ostream operator
170             friend Ostream& operator<<
171             (
172                 Ostream& os,
173                 const reactingMultiphaseParcelInjectionData& data
174             );
176             //- Istream operator
177             friend Istream& operator>>
178             (
179                 Istream& is,
180                 reactingMultiphaseParcelInjectionData& data
181             );
185 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
187 } // End namespace Foam
189 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
191 #include "reactingMultiphaseParcelInjectionDataI.H"
193 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
195 #endif
197 // ************************************************************************* //