cellZoneList.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2024-2025 OpenFOAM Foundation
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
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.
15 
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.
20 
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/>.
23 
24 Description
25  Foam::cellZoneList
26 
27 \*---------------------------------------------------------------------------*/
28 
29 #ifndef cellZoneList_H
30 #define cellZoneList_H
31 
32 #include "cellZone.H"
33 #include "ZoneList.H"
34 
35 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
36 
37 namespace Foam
38 {
39 
40 class polyMesh;
41 
42 /*---------------------------------------------------------------------------*\
43  Class cellZoneList Declaration
44 \*---------------------------------------------------------------------------*/
45 
47 :
48  public ZoneList<cellZone, cellZoneList, polyMesh>
49 {
50 public:
51 
52  //- Runtime type information
53  TypeName("cellZoneList");
54 
55 
56  // Constructors
57 
59 
60 
61  // Member Functions
62 
63  //- Return number of cells in the mesh
64  label allSize() const;
65 
66  using ZoneList::append;
67 
68  //- Append a cellZone with the given name and indices
69  void append(const word& name, const labelUList& addr) const
70  {
71  append(new cellZone(name, addr, *this));
72  }
73 };
74 
75 
76 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
77 
78 } // End namespace Foam
79 
80 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
81 
82 #endif
83 
84 // ************************************************************************* //
const word & name() const
Return name.
Definition: IOobject.H:307
A list of mesh zones.
Definition: ZoneList.H:71
const ZoneType & append(ZoneType *) const
Append or update a zone.
Definition: ZoneList.C:214
const ZoneType & append(ZoneType *) const
Append or update a zone.
Definition: ZoneList.C:214
void append(const word &name, const labelUList &addr) const
Append a cellZone with the given name and indices.
Definition: cellZoneList.H:69
label allSize() const
Return number of cells in the mesh.
Definition: cellZoneList.C:39
TypeName("cellZoneList")
Runtime type information.
Named list of cell indices representing a sub-set of the mesh.
Definition: cellZone.H:61
A class for handling words, derived from string.
Definition: word.H:63
Namespace for OpenFOAM.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Definition: label.H:59