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

reactingParcelInjectionData.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::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: ************************ //
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines