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::attachPolyTopoChanger
29 This class is derived from polyMesh and serves as a tool for
30 statically connecting pieces of a mesh by executing the mesh
31 modifiers and cleaning the mesh.
33 The idea is that a mesh can be built from pieces and put together
34 using various mesh modifiers (mainly sliding interfaces) which are
35 not needed during the run. Therefore, once the mesh is assembled
36 and mesh modification triggered, the newly created point, face and
37 cell zones can be cleared together with the mesh modifiers thus
38 creating a singly connected static mesh.
41 All point, face and cell zoning will be lost! Do it after
42 attaching the parts of the mesh, as the point, face and cell
45 \*---------------------------------------------------------------------------*/
47 #ifndef attachPolyTopoChanger_H
48 #define attachPolyTopoChanger_H
50 #include "polyTopoChanger.H"
52 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
57 /*---------------------------------------------------------------------------*\
58 Class attachPolyTopoChanger Declaration
59 \*---------------------------------------------------------------------------*/
61 class attachPolyTopoChanger
63 public polyTopoChanger
67 // Private Member Functions
69 //- Disallow default bitwise copy construct
70 attachPolyTopoChanger(const attachPolyTopoChanger&);
72 //- Disallow default bitwise assignment
73 void operator=(const attachPolyTopoChanger&);
80 //- Read constructor from IOobject and a polyMesh
81 attachPolyTopoChanger(const IOobject& io, polyMesh&);
83 //- Read constructor for given polyMesh
84 explicit attachPolyTopoChanger(polyMesh&);
89 virtual ~attachPolyTopoChanger()
95 //- Attach mesh. By default filter out empty patches.
96 void attach(const bool removeEmptyPatches = true);
100 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
102 } // End namespace Foam
105 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
109 // ************************************************************************* //