Forward compatibility: flex
[foam-extend-3.2.git] / applications / utilities / preProcessing / fluentDataToFoam / fluentDataConverter.H
bloba372147c5e8e1cf8f2397673b47139d4ed923c0e
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 Class
25     fluentDataConverter
27 Description
28     Fluent to FOAM field data converter
30 Author
31     Hrvoje Jasak, Wikki Ltd.  All rights reserved.
33 SourceFiles
34     fluentDataConverter.C
36 \*---------------------------------------------------------------------------*/
38 #ifndef fluentDataConverter_H
39 #define fluentDataConverter_H
41 #include "fvCFD.H"
42 #include "wordIOList.H"
44 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
46 namespace Foam
49 /*---------------------------------------------------------------------------*\
50                      Class fluentDataConverter Declaration
51 \*---------------------------------------------------------------------------*/
53 class fluentDataConverter
55     // Private data
57         //- Reference to mesh
58         const fvMesh& mesh_;
60         //- Zone to patch name lookup
61         const wordIOList zoneToPatchName_;
63         //- Field ID list
64         const SLList<label>& fieldID_;
66         //- Zone ID list
67         const SLList<label>& zoneID_;
69         //- Zone start index
70         const SLList<label>& firstID_;
72         //- Zone end index
73         const SLList<label>& lastID_;
75         //- Fluent zone data
76         const SLPtrList<FieldField<Field, scalar> >& zoneData_;
80     // Private Member Functions
82         //- Disallow default bitwise copy construct
83         fluentDataConverter(const fluentDataConverter&);
85         //- Disallow default bitwise assignment
86         void operator=(const fluentDataConverter&);
89 public:
91     // Constructors
93         //- Construct from components
94         fluentDataConverter
95         (
96             const fvMesh& mesh,
97             const SLList<label>& fieldID,
98             const SLList<label>& zoneID,
99             const SLList<label>& firstID,
100             const SLList<label>& lastID,
101             const SLPtrList<FieldField<Field, scalar> >& zoneData
102         );
105     // Destructor - default
108     // Member Functions
110         //- Convert field
111         tmp<volScalarField> convertField
112         (
113             const word& fieldName,
114             const label unitNumber,
115             const dimensionedScalar& defaultValue
116         ) const;
120 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
122 } // End namespace Foam
124 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
126 #endif
128 // ************************************************************************* //