STYLE: linearAxialAngularSpring: indentation
[OpenFOAM-2.0.x.git] / src / meshTools / searchableSurface / closedTriSurfaceMesh.H
blob845d6fa6ccee3395e9f3d647e925b3c1c92f32c1
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
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
13     the Free Software Foundation, either version 3 of the License, or
14     (at your 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
19     for more details.
21     You should have received a copy of the GNU General Public License
22     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
24 Class
25     Foam::closedTriSurfaceMesh
27 Description
28     A triSurfaceMesh where it is forced to check volumeTypes, used for surfaces
29     that are topologically non-manifold (small holes or multiple parts) but are
30     geometrically essentially closed
32 SourceFiles
33     closedTriSurfaceMesh.C
35 \*---------------------------------------------------------------------------*/
37 #ifndef closedTriSurfaceMesh_H
38 #define closedTriSurfaceMesh_H
40 #include "triSurfaceMesh.H"
42 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44 namespace Foam
47 /*---------------------------------------------------------------------------*\
48                            Class closedTriSurfaceMesh Declaration
49 \*---------------------------------------------------------------------------*/
51 class closedTriSurfaceMesh
53     public triSurfaceMesh
55 private:
57         //- Disallow default bitwise copy construct
58         closedTriSurfaceMesh(const closedTriSurfaceMesh&);
60         //- Disallow default bitwise assignment
61         void operator=(const closedTriSurfaceMesh&);
64 public:
66     //- Runtime type information
67     TypeName("closedTriSurfaceMesh");
70     // Constructors
72         //- Construct from triSurface
73         closedTriSurfaceMesh(const IOobject&, const triSurface&);
75         //- Construct read.
76         closedTriSurfaceMesh(const IOobject& io);
78         //- Construct from IO and dictionary (used by searchableSurface).
79         //  Dictionary may contain a 'scale' entry (eg, 0.001: mm -> m)
80         closedTriSurfaceMesh
81         (
82             const IOobject& io,
83             const dictionary& dict
84         );
87     // Destructor
89         virtual ~closedTriSurfaceMesh();
91     // Member Functions
93         //- Whether supports volume type, forcing to true to force getVolumeType
94         //  queries for this type
95         virtual bool hasVolumeType() const
96         {
97             return true;
98         }
103 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
105 } // End namespace Foam
107 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
109 #endif
111 // ************************************************************************* //