Write OpenFOAM patches and patch fields in VTP or legacy vtk format. More...
#include <foamVtkPatchMeshWriter.H>


Public Member Functions | |
| patchMeshWriter (const patchMeshWriter &)=delete | |
| No copy construct. | |
| void | operator= (const patchMeshWriter &)=delete |
| No copy assignment. | |
| patchMeshWriter (const polyMesh &mesh, const labelUList &patchIDs, const vtk::outputOptions opts=vtk::formatType::INLINE_BASE64) | |
| Construct from components (default format INLINE_BASE64). | |
| patchMeshWriter (const polyMesh &mesh, const labelUList &patchIDs, const fileName &file, bool parallel=UPstream::parRun()) | |
| Construct from components (default format INLINE_BASE64), and open the file for writing. | |
| patchMeshWriter (const polyMesh &mesh, const labelUList &patchIDs, const vtk::outputOptions opts, const fileName &file, bool parallel=UPstream::parRun()) | |
| Construct from components and open the file for writing. | |
| virtual | ~patchMeshWriter ()=default |
| Destructor. | |
| const labelList & | patchIDs () const noexcept |
| The patch IDs. | |
| virtual bool | beginFile (std::string title="") |
| Write file header (non-collective). | |
| virtual bool | writeGeometry () |
| Write patch topology. | |
| virtual bool | beginCellData (label nFields=0) |
| Begin CellData output section for specified number of fields. | |
| virtual bool | beginPointData (label nFields=0) |
| Begin PointData for specified number of fields. | |
| void | writePatchIDs () |
| Write patch ids as CellData. | |
| bool | writeProcIDs () |
| Write processor ids for each line as CellData or for each point as PointData, depending on isPointData() state. No-op in serial. | |
| bool | writeNeighIDs () |
| Write processor neighbour ids as CellData. This is no-op in serial. | |
| template<class Type> | |
| void | writeUniform (const word &fieldName, const Type &val) |
| Write a uniform field of Cell (Face) or Point values. | |
| word | ext () const |
| File extension for current format type. | |
| Public Member Functions inherited from fileWriter | |
| fileWriter (const vtk::fileTag contentType, const vtk::outputOptions opts) | |
| Construct from components. | |
| virtual | ~fileWriter () |
| Destructor. | |
| vtk::fileTag | contentType () const noexcept |
| The content type. | |
| vtk::outputOptions | opts () const noexcept |
| The output options in use. | |
| word | ext () const |
| File extension for current format type. | |
| bool | legacy () const noexcept |
| Commonly used query. | |
| bool | parallel () const noexcept |
| Parallel output requested? | |
| const word & | state () const |
| The output state in printable format. | |
| const fileName & | output () const noexcept |
| The current output file name. | |
| virtual bool | open (const fileName &file, bool parallel=UPstream::parRun()) |
| Open file for writing (creates parent directory). | |
| void | close () |
| End the file contents and close the file after writing. | |
| bool | beginFieldData (label nFields=0) |
| Begin FieldData output section for specified number of fields. | |
| bool | isCellData () const noexcept |
| True if output state corresponds to CELL_DATA. | |
| bool | isPointData () const noexcept |
| True if output state corresponds to POINT_DATA. | |
| label | nCellData () const noexcept |
| The number of CellData written for the Piece thus far. | |
| label | nPointData () const noexcept |
| The number of PointData written for the Piece thus far. | |
| bool | endFieldData () |
| Explicitly end FieldData output and switch to DECLARED state. | |
| bool | endCellData () |
| Explicitly end CellData output and switch to PIECE state. | |
| bool | endPointData () |
| Explicitly end PointData output and switch to PIECE state. | |
| void | writeTimeValue (scalar timeValue) |
| Write "TimeValue" FieldData (name as per Catalyst output). | |
Static Public Member Functions | |
| static word | ext (vtk::outputOptions opts) |
| File extension for given output type. | |
Protected Member Functions | |
| label | nTotalPoints () const noexcept |
| Total number of field points for the current Piece. | |
| label | nTotalCells () const noexcept |
| Total number of field cells (faces) for the current Piece. | |
| void | beginPiece () |
| Determine sizes and begin piece. | |
| void | writePoints () |
| Write patch points. | |
| void | writePolys_legacy () |
| Write patch faces, legacy format. | |
| void | writePolys () |
| Write patch faces. | |
| Protected Member Functions inherited from fileWriter | |
| void | checkFormatterValidity () const |
| Verify that formatter in either allocated or not required. | |
| Ostream & | reportBadState (Ostream &, outputState expected) const |
| Generate message reporting bad writer state. | |
| Ostream & | reportBadState (Ostream &, outputState, outputState) const |
| Generate message reporting bad writer state. | |
| std::ofstream & | os () noexcept |
| The backend ostream in use. | |
| vtk::formatter & | format () |
| The VTK formatter in use. FatalError for off-processor. | |
| bool | isState (outputState test) const noexcept |
| True if output state corresponds to the test state. | |
| bool | notState (outputState test) const noexcept |
| True if output state does not correspond to the test state. | |
| template<class Type> | |
| void | beginDataArray (const word &fieldName, const label nValues) |
| Start of a field or DataArray output (legacy or non-legacy). | |
| void | endDataArray () |
| Flush formatter and end of DataArray output (non-legacy). | |
| void | beginPoints (const label nPoints) |
| Start of a POINTS DataArray. | |
| void | endPoints () |
| End of a POINTS DataArray. | |
| bool | enter_Piece () |
| Trigger change state to Piece. Resets nCellData_, nPointData_. | |
| bool | endPiece () |
| Explicitly end Piece output and switch to DECLARED state. | |
| bool | enter_CellData (label nEntries, label nFields) |
| Trigger change state to CellData. | |
| bool | enter_PointData (label nEntries, label nFields) |
| Trigger change state to PointData. | |
| bool | exit_File () |
| Emit file footer (end data, end piece, end file). | |
| template<class Type> | |
| void | writeUniform (const word &fieldName, const Type &val, const label nValues) |
| Write uniform field content. | |
| template<class Type> | |
| void | writeBasicField (const word &fieldName, const UList< Type > &field) |
| Write basic (primitive) field content. | |
| bool | writeProcIDs (const label nValues) |
| Write nValues of processor ids as CellData or PointData (no-op in serial). | |
| fileWriter (const fileWriter &)=delete | |
| No copy construct. | |
| void | operator= (const fileWriter &)=delete |
| No copy assignment. | |
Protected Attributes | |
| const polyMesh & | mesh_ |
| Reference to the OpenFOAM mesh (or subset). | |
| labelList | patchIDs_ |
| The selected patch ids. | |
| OffsetRange< label > | pointSlab_ |
| Slab addressing for field points of the current Piece. | |
| OffsetRange< label > | cellSlab_ |
| Slab addressing for field cells (faces) for the current Piece. | |
| OffsetRange< label > | connectivitySlab_ |
| Slab addressing for cell (face) connectivity count, which is just the sum of the face sizes. | |
| Protected Attributes inherited from fileWriter | |
| outputState | state_ |
| The output state. | |
| vtk::fileTag | contentType_ |
| The content type (PolyData, UnstructuredGrid ...). | |
| bool | parallel_ |
| Parallel writing (via master). | |
| vtk::outputOptions | opts_ |
| Requested output options. | |
| label | nCellData_ |
| The number of CellData written for the Piece thus far. | |
| label | nPointData_ |
| The number of PointData written for the Piece thus far. | |
| fileName | outputFile_ |
| The output file name. | |
| autoPtr< vtk::formatter > | format_ |
| The VTK formatter in use (only valid on master process). | |
| std::ofstream | os_ |
| The backend ostream in use (only opened on master process). | |
Additional Inherited Members | |
| Protected Types inherited from fileWriter | |
| enum class | outputState : uint8_t { CLOSED = 0 , OPENED , DECLARED , FIELD_DATA , PIECE , CELL_DATA , POINT_DATA } |
| Internal tracking of the output state. More... | |
| Static Protected Attributes inherited from fileWriter | |
| static const Enum< outputState > | stateNames |
| Names for the output state (for messages, not for file output). | |
Write OpenFOAM patches and patch fields in VTP or legacy vtk format.
The file output states are managed by the Foam::vtk::fileWriter class. FieldData (eg, TimeValue) must appear before any geometry pieces.
Definition at line 63 of file foamVtkPatchMeshWriter.H.
|
delete |
No copy construct.
References patchMeshWriter().
Referenced by operator=(), patchMeshWriter(), patchWriter::patchWriter(), patchWriter::patchWriter(), patchWriter::patchWriter(), and patchWriter::patchWriter().


| patchMeshWriter | ( | const polyMesh & | mesh, |
| const labelUList & | patchIDs, | ||
| const vtk::outputOptions | opts = vtk::formatType::INLINE_BASE64 ) |
Construct from components (default format INLINE_BASE64).
References Foam::vtk::INLINE_BASE64, mesh, fileWriter::opts(), and patchIDs().

| patchMeshWriter | ( | const polyMesh & | mesh, |
| const labelUList & | patchIDs, | ||
| const fileName & | file, | ||
| bool | parallel = UPstream::parRun() ) |
Construct from components (default format INLINE_BASE64), and open the file for writing.
The file name is with/without an extension.
References mesh, fileWriter::parallel(), UPstream::parRun(), and patchIDs().

| patchMeshWriter | ( | const polyMesh & | mesh, |
| const labelUList & | patchIDs, | ||
| const vtk::outputOptions | opts, | ||
| const fileName & | file, | ||
| bool | parallel = UPstream::parRun() ) |
Construct from components and open the file for writing.
The file name is with/without an extension.
References mesh, fileWriter::opts(), fileWriter::parallel(), UPstream::parRun(), and patchIDs().

|
virtualdefault |
|
inlineprotectednoexcept |
Total number of field points for the current Piece.
Definition at line 103 of file foamVtkPatchMeshWriter.H.
References Foam::noexcept, and pointSlab_.
|
inlineprotectednoexcept |
Total number of field cells (faces) for the current Piece.
Definition at line 108 of file foamVtkPatchMeshWriter.H.
References cellSlab_, and Foam::noexcept.
|
protected |
Determine sizes and begin piece.
|
protected |
Write patch points.
|
protected |
Write patch faces, legacy format.
|
protected |
Write patch faces.
|
delete |
|
inlinestatic |
File extension for given output type.
Definition at line 202 of file foamVtkPatchMeshWriter.H.
References fileWriter::opts(), and Foam::vtk::POLY_DATA.

|
inlinenoexcept |
The patch IDs.
Definition at line 210 of file foamVtkPatchMeshWriter.H.
References Foam::noexcept, and patchIDs_.
Referenced by patchMeshWriter(), patchMeshWriter(), patchMeshWriter(), patchWriter::patchWriter(), patchWriter::patchWriter(), patchWriter::patchWriter(), and patchWriter::patchWriter().

|
virtual |
Write file header (non-collective).
Reimplemented from fileWriter.
|
virtual |
Write patch topology.
Also writes the file header if not previously written.
Implements fileWriter.
|
virtual |
Begin CellData output section for specified number of fields.
Must be called prior to writing any cell data fields.
| nFields | is for legacy format only. When nFields=0, this a no-op for legacy format. |
Implements fileWriter.
|
virtual |
Begin PointData for specified number of fields.
Must be called prior to writing any point data fields.
| nFields | is for legacy format only. When nFields=0, this a no-op for legacy format. |
Implements fileWriter.
| void writePatchIDs | ( | ) |
Write patch ids as CellData.
Must be called within the CELL_DATA state.
| bool writeProcIDs | ( | ) |
Write processor ids for each line as CellData or for each point as PointData, depending on isPointData() state. No-op in serial.
| bool writeNeighIDs | ( | ) |
Write processor neighbour ids as CellData. This is no-op in serial.
Must be called within the CELL_DATA state.
| void writeUniform | ( | const word & | fieldName, |
| const Type & | val ) |
Write a uniform field of Cell (Face) or Point values.
|
inline |
File extension for current format type.
Definition at line 318 of file foamVtkFileWriterI.H.
|
protected |
Reference to the OpenFOAM mesh (or subset).
Definition at line 74 of file foamVtkPatchMeshWriter.H.
|
protected |
The selected patch ids.
Definition at line 79 of file foamVtkPatchMeshWriter.H.
Referenced by patchIDs().
|
protected |
Slab addressing for field points of the current Piece.
Definition at line 84 of file foamVtkPatchMeshWriter.H.
Referenced by nTotalPoints().
|
protected |
Slab addressing for field cells (faces) for the current Piece.
Definition at line 89 of file foamVtkPatchMeshWriter.H.
Referenced by nTotalCells().
|
protected |
Slab addressing for cell (face) connectivity count, which is just the sum of the face sizes.
Definition at line 95 of file foamVtkPatchMeshWriter.H.