52 #ifndef Foam_meshReader_H 53 #define Foam_meshReader_H 90 const label&
cellId()
const 96 const label&
faceId()
const 125 mutable std::unique_ptr<labelListList> pointCellsPtr_;
149 void calcPointCells()
const;
154 void createPolyCells();
157 void addPolyBoundaryFace
160 const label cellFaceId,
161 const label nCreatedFaces
165 void addPolyBoundaryFace
168 const label nCreatedFaces
179 void createPolyBoundary();
186 void clearExtraStorage();
191 void writeMeshLabelList
194 const word& propertyName,
const T & first() const noexcept
Access the first element.
List< List< cellFaceIdentifier > > boundaryIds_
Identify boundary faces by cells and their faces.
wordList patchPhysicalTypes_
Boundary patch physical types.
A class for handling file names.
bool notUsed() const
Unused if either cell or face are negative.
virtual bool readGeometry(const scalar scaleFactor=1.0)=0
Subclasses are required to supply this information.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
wordList patchTypes_
Boundary patch types.
static void warnDuplicates(const word &context, const wordList &)
Warn about repeated names.
Identify cell faces in terms of cell Id and face Id.
Smooth ATC in cells having a point to a set of patches supplied by type.
A simple container for options an IOstream can normally have.
pointField points_
Points supporting the mesh.
labelList patchStarts_
Polyhedral mesh boundary patch start indices and dimensions.
labelList origCellId_
Lookup original Cell number for a given cell.
wordList patchNames_
Boundary patch names.
bool used() const
Used if both cell or face are non-negative.
A class for handling words, derived from Foam::string.
A HashTable similar to std::unordered_map.
void writeMesh(const polyMesh &, IOstreamOption streamOpt=IOstreamOption(IOstreamOption::BINARY)) const
Write mesh.
The cellTable persistent data saved as a Map<dictionary>.
virtual autoPtr< polyMesh > mesh(const objectRegistry &)
Create and return polyMesh.
faceList meshFaces_
Global face list for polyMesh.
cellFaceIdentifier()
Construct null, as invalid pair.
scalar scaleFactor_
Geometry scaling.
cellTable cellTable_
Cell table persistent data saved as a dictionary.
fileName geometryFile_
Referenced filename.
faceList baffleFaces_
List of each baffle face.
labelList cellTableId_
Cell table id for each cell.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers...
const dimensionedScalar c
Speed of light in a vacuum.
void writeAux(const objectRegistry &) const
Write auxiliary information.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
Mesh consisting of general polyhedral cells.
Registry of regIOobjects.
label nInternalFaces_
Number of internal faces for polyMesh.
const T & second() const noexcept
Access the second element.
const label & cellId() const
The cell id (readonly)
faceListList cellFaces_
List of faces for every cell.
const label & faceId() const
The face id (readonly)
This class supports creating polyMeshes with baffles.
virtual ~meshReader()=default
Destructor.