Merge branch 'master' of ssh://git.code.sf.net/p/foam-extend/foam-extend-3.2
[foam-extend-3.2.git] / src / conversion / ensight / part / ensightPartI.H
blob7a00658bbd7c33545e320f4761993bb744d7a1a9
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 Description
25     Template to write generalized field components
27 \*---------------------------------------------------------------------------*/
29 #include "ensightPart.H"
31 // * * * * * * * * * * * * * * * Global Functions  * * * * * * * * * * * * * //
33 template <class Type>
34 void Foam::ensightPart::writeField
36     ensightFile& os,
37     const Field<Type>& field
38 ) const
40     if (size() && field.size())
41     {
42         writeHeader(os);
44         forAll(elementTypes(), elemI)
45         {
46             const labelList& idList = elemLists_[elemI];
48             if (idList.size())
49             {
50                 os.writeKeyword( elementTypes()[elemI] );
52                 for
53                 (
54                     direction cmpt=0;
55                     cmpt < pTraits<Type>::nComponents;
56                     cmpt++
57                 )
58                 {
59                     writeFieldList(os, field.component(cmpt), idList);
60                 }
61             }
62         }
63     }
67 // ************************************************************************* //