15 #ifndef GEOS_FILEIO_VTK_VTKPOLYDATAWRITERINTERFACE_HPP_
16 #define GEOS_FILEIO_VTK_VTKPOLYDATAWRITERINTERFACE_HPP_
21 #include "fileIO/vtk/VTKPVDWriter.hpp"
22 #include "fileIO/vtk/VTKVTMWriter.hpp"
23 #include "codingUtilities/EnumStrings.hpp"
25 class vtkUnstructuredGrid;
32 class DomainPartition;
33 class ElementRegionBase;
34 class ParticleRegionBase;
35 class EmbeddedSurfaceNodeManager;
36 class ElementRegionManager;
38 class ParticleManager;
43 enum struct VTKOutputMode
49 enum struct VTKRegionTypes
89 m_writeGhostCells = writeGhostCells;
118 m_outputRegionType = regionType;
128 m_outputDir = std::move( outputDir );
129 m_outputName = std::move( outputName );
139 m_onlyPlotSpecifiedFieldNames = onlyPlotSpecifiedFieldNames;
148 m_fieldNames.insert( fieldNames.begin(), fieldNames.end() );
157 m_levelNames.insert( levelNames.begin(), levelNames.end() );
221 void writeCellElementRegions(
real64 time,
224 string const & path )
const;
226 void writeParticleRegions(
real64 const time,
228 string const & path )
const;
238 void writeWellElementRegions(
real64 time,
241 string const & path )
const;
253 void writeSurfaceElementRegions(
real64 time,
257 string const & path )
const;
267 void writeVtmFile(
integer const cycle,
276 void writeNodeFields(
NodeManager const & nodeManager,
278 vtkPointData * pointData )
const;
286 vtkCellData * cellData )
const;
289 vtkCellData * cellData )
const;
299 void writeUnstructuredGrid(
string const & path,
300 vtkUnstructuredGrid * ug )
const;
315 bool m_writeGhostCells;
321 integer m_onlyPlotSpecifiedFieldNames;
324 bool m_requireFieldRegistrationCheck;
327 std::set< string > m_fieldNames;
330 std::set< string > m_levelNames;
336 VTKOutputMode m_outputMode;
339 VTKRegionTypes m_outputRegionType;
Partition of the decomposed physical domain. It also manages the connexion information to its neighbo...
The ElementRegionBase is the base class to manage the data stored at the element level.
The ElementRegionManager class provides an interface to ObjectManagerBase in order to manage ElementR...
The EmbeddedSurfaceNodeManager class provides an interface to ObjectManagerBase in order to manage no...
The NodeManager class provides an interface to ObjectManagerBase in order to manage node data.
The ParticleManager class provides an interface to ObjectManagerBase in order to manage ParticleRegio...
The ParticleRegionBase is the base class to manage the data stored at the particle level.
Base class for all wrappers containing common operations.
void setFileName(string fileName)
Set the output file name.
Encapsulate output methods for vtk.
void setOutputLocation(string outputDir, string outputName)
Set the output directory name.
void setWriteGhostCells(bool writeGhostCells)
Defines if the vtk outputs should contain the ghost cells.
void write(real64 time, integer cycle, DomainPartition const &domain)
Main method of this class. Write all the files for one time step.
void setFieldNames(arrayView1d< string const > const &fieldNames)
Set the names of the fields to output.
void setPlotLevel(integer plotLevel)
Sets the plot level.
void setOnlyPlotSpecifiedFieldNamesFlag(integer const onlyPlotSpecifiedFieldNames)
Set the flag to decide whether we only plot the fields specified by fieldNames, or if we also plot fi...
void setOutputRegionType(VTKRegionTypes regionType)
Set the output region type.
VTKPolyDataWriterInterface(string outputName)
Constructor.
void setOutputMode(VTKOutputMode mode)
Set the binary mode.
void clearData()
Clears the datasets accumulated in the pvd writer.
void setLevelNames(arrayView1d< string const > const &levelNames)
Set the names of the mesh levels to output.
PlotLevel toPlotLevel(int const val)
Function to get a PlotLevel enum from an int.
ArrayView< T, 1 > arrayView1d
Alias for 1D array view.
ENUM_STRINGS(LinearSolverParameters::SolverType, "direct", "cg", "gmres", "fgmres", "bicgstab", "preconditioner")
Declare strings associated with enumeration values.
double real64
64-bit floating point type.
std::int32_t integer
Signed integer type.
std::string joinPath(ARGS const &... args)
Join parts of a path.