1 /*---------------------------------------------------------------------------*\
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 -------------------------------------------------------------------------------
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/>.
25 Foam::surfZoneIdentifier
28 An identifier for a surface zone on a meshed surface.
30 Similar in concept to a faceZone on the surface, but can also have a
31 "geometricType" as well.
36 \*---------------------------------------------------------------------------*/
38 #ifndef surfZoneIdentifier_H
39 #define surfZoneIdentifier_H
45 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
52 // Forward declaration of friend functions and operators
54 class surfZoneIdentifier;
55 Ostream& operator<<(Ostream&, const surfZoneIdentifier&);
57 /*---------------------------------------------------------------------------*\
58 Class surfZoneIdentifier Declaration
59 \*---------------------------------------------------------------------------*/
61 class surfZoneIdentifier
68 //- Index of zone in surface mesh
72 mutable word geometricType_;
82 //- Construct from components
87 const word& geometricType = word::null
91 //- Construct from dictionary
99 //- Construct from another zone identifier, resetting the index
102 const surfZoneIdentifier&,
109 virtual ~surfZoneIdentifier();
115 const word& name() const
120 //- Return name for modification
126 //- Return the geometric type of the zone
127 const word& geometricType() const
129 return geometricType_;
132 //- Return the geometric type of the zone for modification
133 word& geometricType()
135 return geometricType_;
138 //- Return the index of this zone in the surface mesh
144 //- Write surfZoneIdentifier as a dictionary
145 void write(Ostream&) const;
147 //- Write surfZoneIdentifier as a dictionary
148 // void writeDict(Ostream&) const;
153 // bool operator!=(const surfZoneIdentifier&) const;
156 // bool operator==(const surfZoneIdentifier&) const;
160 friend Ostream& operator<<(Ostream&, const surfZoneIdentifier&);
161 // friend Istream& operator>>(Istream&, surfZoneIdentifier&);
165 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
167 } // End namespace Foam
169 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
173 // ************************************************************************* //