1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
7 -------------------------------------------------------------------------------
9 This file is part of OpenFOAM.
11 OpenFOAM 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 2 of the License, or (at your
14 option) any later version.
16 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21 You should have received a copy of the GNU General Public License
22 along with OpenFOAM; if not, write to the Free Software Foundation,
23 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
26 Foam::ensightPartCells
29 An implementation of ensightPart to hold volume mesh cells.
34 \*---------------------------------------------------------------------------*/
36 #ifndef ensightPartCells_H
37 #define ensightPartCells_H
39 #include "ensightPart.H"
40 #include <OpenFOAM/typeInfo.H>
42 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
47 /*---------------------------------------------------------------------------*\
48 Class ensightPartCells Declaration
49 \*---------------------------------------------------------------------------*/
51 class ensightPartCells
55 // Private Member Functions
57 //- Disallow default bitwise assignment
58 void operator=(const ensightPartCells&);
60 //- classify the cell types
61 void classify(const labelList& idLabels = labelList::null());
64 virtual localPoints calcLocalPoints() const;
66 //- track the points used
67 // virtual void makeLocalPointMap();
69 //- element connectivity
70 virtual void writeConnectivity
74 const labelList& idList,
75 const labelList& pointMap
81 //- addressable Ensight element types
91 // Static data members
92 static List<word> elemTypes_;
97 //- Runtime type information
98 TypeName("ensightCells");
102 //- Construct empty part with number and description
103 ensightPartCells(label partNumber, const string& partDescription);
105 //- Construct from polyMesh without zones
106 ensightPartCells(label partNumber, const polyMesh&);
108 //- Construct from polyMesh and list of (non-zoned) cells
116 //- Construct from polyMesh and cellZone
124 //- Construct as copy
125 ensightPartCells(const ensightPartCells&);
127 //- Construct from Istream
128 ensightPartCells(Istream&);
130 //- Construct on freestore from Istream
131 static autoPtr<ensightPartCells> New(Istream& is)
133 return autoPtr<ensightPartCells>(new ensightPartCells(is));
138 virtual ~ensightPartCells();
143 //- static listing of the element types
144 virtual List<word> const& elementTypes() const
151 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
153 } // End namespace Foam
155 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
159 // ************************ vim: set sw=4 sts=4 et: ************************ //