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/>.
28 Various mesh related information for a parallel run. Incomplete.
33 \*---------------------------------------------------------------------------*/
35 #ifndef faGlobalMeshData_H
36 #define faGlobalMeshData_H
38 #include "faProcessorTopology.H"
40 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 // Class forward declarations
48 /*---------------------------------------------------------------------------*\
49 Class faGlobalMeshData Declaration
50 \*---------------------------------------------------------------------------*/
52 class faGlobalMeshData
54 public faProcessorTopology
61 // Globally shared point addressing
63 //- Total number of global points
66 //- Indices of local points that are globally shared
67 labelList sharedPointLabels_;
69 //- Indices of globally shared points in the master list
70 // This list contains all the shared points in the mesh
71 labelList sharedPointAddr_;
73 // Private Member Functions
75 //- Disallow default bitwise copy construct
76 faGlobalMeshData(const faGlobalMeshData&);
78 //- Disallow default bitwise assignment
79 void operator=(const faGlobalMeshData&);
84 //- Runtime type information
85 ClassName("faGlobalMeshData");
90 //- Construct from mesh
91 faGlobalMeshData(const faMesh& mesh);
103 //- Return mesh reference
104 const faMesh& mesh() const;
106 // Globally shared point addressing
108 //- Return number of globally shared points
109 label nGlobalPoints() const
111 return nGlobalPoints_;
114 //- Return indices of local points that are globally shared
115 const labelList& sharedPointLabels() const
117 return sharedPointLabels_;
120 //- Return addressing into the complete globally shared points
122 const labelList& sharedPointAddr() const
124 return sharedPointAddr_;
127 //- Change global mesh data given a topological change.
132 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
134 } // End namespace Foam
136 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
140 // ************************************************************************* //