FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

reactingMultiphaseParcelInjectionData.H

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------------*\
00002   =========                 |
00003   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
00004    \\    /   O peration     |
00005     \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
00006      \\/     M anipulation  |
00007 -------------------------------------------------------------------------------
00008 License
00009     This file is part of OpenFOAM.
00010 
00011     OpenFOAM is free software: you can redistribute it and/or modify it
00012     under the terms of the GNU General Public License as published by
00013     the Free Software Foundation, either version 3 of the License, or
00014     (at your option) any later version.
00015 
00016     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
00017     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00018     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
00019     for more details.
00020 
00021     You should have received a copy of the GNU General Public License
00022     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
00023 
00024 Class
00025     Foam::reactingMultiphaseParcelInjectionData
00026 
00027 Description
00028     Container class to provide injection data for reacting multiphase parcels
00029 
00030 SourceFiles
00031     reactingMultiphaseParcelInjectionData.C
00032 
00033 \*---------------------------------------------------------------------------*/
00034 
00035 #ifndef reactingMultiphaseParcelInjectionData_H
00036 #define reactingMultiphaseParcelInjectionData_H
00037 
00038 #include <lagrangianIntermediate/reactingParcelInjectionData.H>
00039 
00040 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00041 
00042 namespace Foam
00043 {
00044 
00045 // Forward declaration of classes
00046 class reactingMultiphaseParcelInjectionData;
00047 
00048 // Forward declaration of friend functions
00049 
00050 Ostream& operator<<
00051 (
00052     Ostream&,
00053     const reactingMultiphaseParcelInjectionData&
00054 );
00055 
00056 Istream& operator>>
00057 (
00058     Istream&,
00059     reactingMultiphaseParcelInjectionData&
00060 );
00061 
00062 /*---------------------------------------------------------------------------*\
00063             Class reactingMultiphaseParcelInjectionData Declaration
00064 \*---------------------------------------------------------------------------*/
00065 
00066 class reactingMultiphaseParcelInjectionData
00067 :
00068     public reactingParcelInjectionData
00069 {
00070 protected:
00071 
00072     // Parcel properties
00073 
00074         //- List of gaseous mass fractions
00075         scalarList YGas_;
00076 
00077         //- List of liquid mass fractions
00078         scalarList YLiquid_;
00079 
00080         //- List of solid mass fractions
00081         scalarList YSolid_;
00082 
00083 
00084 public:
00085 
00086     //- Runtime type information
00087     TypeName("reactingMultiphaseParcelInjectionData");
00088 
00089     // Constructors
00090 
00091         //- Null constructor
00092         reactingMultiphaseParcelInjectionData();
00093 
00094         //- Construct from dictionary
00095         reactingMultiphaseParcelInjectionData(const dictionary& dict);
00096 
00097         //- Construct from Istream
00098         reactingMultiphaseParcelInjectionData(Istream& is);
00099 
00100 
00101     //-Destructor
00102     virtual ~reactingMultiphaseParcelInjectionData();
00103 
00104 
00105     // Access
00106 
00107         //- Return const access to the list of gaseous mass fractions
00108         inline const scalarList& YGas() const;
00109 
00110         //- Return const access to the list of liquid mass fractions
00111         inline const scalarList& YLiquid() const;
00112 
00113         //- Return const access to the list of solid mass fractions
00114         inline const scalarList& YSolid() const;
00115 
00116 
00117     // Edit
00118 
00119         //- Return access to the gaseous mass fractions
00120         inline scalarList& YGas();
00121 
00122         //- Return access to the liquid mass fractions
00123         inline scalarList& YLiquid();
00124 
00125         //- Return access to the solid mass fractions
00126         inline scalarList& YSolid();
00127 
00128 
00129     // I-O
00130 
00131         // Friend Operators
00132 
00133             friend bool operator==
00134             (
00135                 const reactingMultiphaseParcelInjectionData& a,
00136                 const reactingMultiphaseParcelInjectionData& b
00137             )
00138             {
00139                 notImplemented
00140                 (
00141                     "operator=="
00142                     "("
00143                         "const reactingMultiphaseParcelInjectionData&, "
00144                         "const reactingMultiphaseParcelInjectionData&"
00145                     ")"
00146                 );
00147 
00148                 return false;
00149             }
00150 
00151             friend bool operator!=
00152             (
00153                 const reactingMultiphaseParcelInjectionData& a,
00154                 const reactingMultiphaseParcelInjectionData& b
00155             )
00156             {
00157                 notImplemented
00158                 (
00159                     "operator=="
00160                     "("
00161                         "const reactingMultiphaseParcelInjectionData&, "
00162                         "const reactingMultiphaseParcelInjectionData&"
00163                     ")"
00164                 );
00165 
00166                 return false;
00167             }
00168 
00169             //- Ostream operator
00170             friend Ostream& operator<<
00171             (
00172                 Ostream& os,
00173                 const reactingMultiphaseParcelInjectionData& data
00174             );
00175 
00176             //- Istream operator
00177             friend Istream& operator>>
00178             (
00179                 Istream& is,
00180                 reactingMultiphaseParcelInjectionData& data
00181             );
00182 };
00183 
00184 
00185 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00186 
00187 } // End namespace Foam
00188 
00189 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00190 
00191 #include "reactingMultiphaseParcelInjectionDataI.H"
00192 
00193 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00194 
00195 #endif
00196 
00197 // ************************ vim: set sw=4 sts=4 et: ************************ //
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines