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::reactingParcelInjectionData 00026 00027 Description 00028 Container class to provide injection data for reacting parcels 00029 00030 SourceFiles 00031 reactingParcelInjectionData.C 00032 00033 \*---------------------------------------------------------------------------*/ 00034 00035 #ifndef reactingParcelInjectionData_H 00036 #define reactingParcelInjectionData_H 00037 00038 #include <lagrangianIntermediate/thermoParcelInjectionData.H> 00039 #include <OpenFOAM/scalarList.H> 00040 00041 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00042 00043 namespace Foam 00044 { 00045 00046 // Forward declaration of classes 00047 class reactingParcelInjectionData; 00048 00049 // Forward declaration of friend functions 00050 00051 Ostream& operator<< 00052 ( 00053 Ostream&, 00054 const reactingParcelInjectionData& 00055 ); 00056 00057 Istream& operator>> 00058 ( 00059 Istream&, 00060 reactingParcelInjectionData& 00061 ); 00062 00063 /*---------------------------------------------------------------------------*\ 00064 Class reactingParcelInjectionData Declaration 00065 \*---------------------------------------------------------------------------*/ 00066 00067 class reactingParcelInjectionData 00068 : 00069 public thermoParcelInjectionData 00070 { 00071 protected: 00072 00073 // Parcel properties 00074 00075 //- List of mass fractions 00076 scalarList Y_; 00077 00078 00079 public: 00080 00081 //- Runtime type information 00082 TypeName("reactingParcelInjectionData"); 00083 00084 // Constructors 00085 00086 //- Null constructor 00087 reactingParcelInjectionData(); 00088 00089 //- Construct from dictionary 00090 reactingParcelInjectionData(const dictionary& dict); 00091 00092 //- Construct from Istream 00093 reactingParcelInjectionData(Istream& is); 00094 00095 00096 //-Destructor 00097 virtual ~reactingParcelInjectionData(); 00098 00099 00100 // Access 00101 00102 //- Return const access to the list of mass fractions 00103 inline const scalarList& Y() const; 00104 00105 00106 // Edit 00107 00108 //- Return access to the mass fractions 00109 inline scalarList& Y(); 00110 00111 00112 // I-O 00113 00114 // Friend Operators 00115 00116 friend bool operator== 00117 ( 00118 const reactingParcelInjectionData& a, 00119 const reactingParcelInjectionData& b 00120 ) 00121 { 00122 notImplemented 00123 ( 00124 "operator==" 00125 "(" 00126 "const reactingParcelInjectionData&, " 00127 "const reactingParcelInjectionData&" 00128 ")" 00129 ); 00130 00131 return false; 00132 } 00133 00134 friend bool operator!= 00135 ( 00136 const reactingParcelInjectionData& a, 00137 const reactingParcelInjectionData& b 00138 ) 00139 { 00140 notImplemented 00141 ( 00142 "operator==" 00143 "(" 00144 "const reactingParcelInjectionData&, " 00145 "const reactingParcelInjectionData&" 00146 ")" 00147 ); 00148 00149 return false; 00150 } 00151 00152 //- Ostream operator 00153 friend Ostream& operator<< 00154 ( 00155 Ostream& os, 00156 const reactingParcelInjectionData& data 00157 ); 00158 00159 //- Istream operator 00160 friend Istream& operator>> 00161 ( 00162 Istream& is, 00163 reactingParcelInjectionData& data 00164 ); 00165 }; 00166 00167 00168 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00169 00170 } // End namespace Foam 00171 00172 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00173 00174 #include "reactingParcelInjectionDataI.H" 00175 00176 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00177 00178 #endif 00179 00180 // ************************ vim: set sw=4 sts=4 et: ************************ //