36 #ifndef vtkHDFWriter_h
37 #define vtkHDFWriter_h
39 #include "vtkIOHDFModule.h"
45 VTK_ABI_NAMESPACE_BEGIN
65 typedef int64_t
hid_t;
91 vtkSetFilePathMacro(FileName);
92 vtkGetFilePathMacro(FileName);
100 vtkSetMacro(Overwrite,
bool);
101 vtkGetMacro(Overwrite,
bool);
110 vtkSetMacro(WriteAllTimeSteps,
bool);
111 vtkGetMacro(WriteAllTimeSteps,
bool);
127 vtkSetMacro(ChunkSize,
int);
128 vtkGetMacro(ChunkSize,
int);
144 vtkSetClampMacro(CompressionLevel,
int, 0, 9);
145 vtkGetMacro(CompressionLevel,
int);
156 vtkSetMacro(UseExternalComposite,
bool);
157 vtkGetMacro(UseExternalComposite,
bool);
175 vtkSetMacro(UseExternalTimeSteps,
bool);
176 vtkGetMacro(UseExternalTimeSteps,
bool);
189 vtkSetMacro(UseExternalPartitions,
bool);
190 vtkGetMacro(UseExternalPartitions,
bool);
241 bool WriteDatasetToFile(
hid_t group,
vtkImageData* input,
unsigned int partId = 0);
244 bool WriteDatasetToFile(
hid_t group,
vtkPolyData* input,
unsigned int partId = 0);
246 bool WriteDatasetToFile(
hid_t group,
vtkTable* input,
unsigned int partId = 0);
260 bool UpdateStepsGroup(
hid_t group,
vtkPolyData* input,
unsigned int partId);
270 bool InitializeTemporalRectilinearGrid(
hid_t group);
271 bool InitializeTemporalStructuredGrid(
hid_t group);
272 bool InitializeTemporalPolyData(
hid_t group);
273 bool InitializeTemporalUnstructuredGrid(
hid_t group);
274 bool InitializeTemporalPolyhedra(
hid_t group);
275 bool InitializeTemporalHTG(
hid_t group);
287 bool InitializePrimitiveDataset(
hid_t group);
288 bool InitializePolyhedraDatasets(
hid_t group);
309 bool AppendPoints(
hid_t group,
vtkPointSet* input,
const int* dims =
nullptr);
399 bool AppendDataSetAttributes(
hid_t group,
vtkDataObject* input,
unsigned int partId = 0,
400 vtkIdList* cellIdMap =
nullptr,
const int* dims =
nullptr);
401 bool AppendFieldDataArrays(
hid_t group,
vtkDataObject* input,
unsigned int partId = 0);
447 bool AppendCompositeSubfilesDataObject(
const std::string& uniqueSubTreeName);
454 const std::string& offsetsGroupName,
unsigned int partId,
bool isStructured =
false);
462 bool AppendTimeValues(
hid_t group);
467 bool HasGeometryChangedFromPreviousStep(
vtkDataSet* input);
475 std::unique_ptr<Implementation> Impl;
478 char* FileName =
nullptr;
479 bool Overwrite =
true;
480 bool WriteAllTimeSteps =
true;
481 bool UseExternalComposite =
false;
482 bool UseExternalTimeSteps =
false;
483 bool UseExternalPartitions =
false;
484 int ChunkSize = 25000;
485 int CompressionLevel = 0;
488 std::vector<double> timeSteps;
489 bool IsTemporal =
false;
490 int CurrentTimeIndex = 0;
491 int NumberOfTimeSteps = 1;
493 std::map<vtkIdType, vtkMTimeType> CompositeMeshMTime;
498 int CurrentPiece = 0;
499 bool UsesDummyController =
false;
500 std::vector<vtkIdType> PointOffsets;
501 std::vector<vtkIdType> CellOffsets;
502 std::vector<vtkIdType> ConnectivityIdOffsets;
504 VTK_ABI_NAMESPACE_END
composite dataset to encapsulates a dataset consisting of partitions.
a dataset that is topologically regular with variable spacing in the three coordinate directions ...
provides implementation for most abstract methods in the superclass vtkCompositeDataSet ...
vtkTypeUInt32 vtkMTimeType
abstract class to specify dataset behavior
Abstract superclass for all arrays.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
concrete class for storing a set of points
concrete dataset represents vertices, lines, polygons, and triangle strips
abstract class to write data to file(s)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
topologically and geometrically regular array of data
list of point or cell ids
dataset represents arbitrary combinations of all possible cell types
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
object to represent cell connectivity
A table, which contains similar-typed columns of data.
topologically regular array of data
Composite dataset that organizes datasets into blocks.
static vtkAlgorithm * New()
Write a data object to a VTKHDF file.
superclass for composite data iterators
virtual bool WriteDataAndReturn()
general representation of visualization data
vtkTypeBool ProcessRequest(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
Upstream/Downstream requests form the generalized interface through which executives invoke a algorit...
represent and manipulate 3D points
Composite dataset that groups datasets as a collection.
Multiprocessing communication superclass.