VTK  9.3.20240418
vtkAbstractParticleWriter.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
19 #ifndef vtkAbstractParticleWriter_h
20 #define vtkAbstractParticleWriter_h
21 
22 #include "vtkIOCoreModule.h" // For export macro
23 #include "vtkWriter.h"
24 
25 VTK_ABI_NAMESPACE_BEGIN
26 class VTKIOCORE_EXPORT vtkAbstractParticleWriter : public vtkWriter
27 {
28 public:
30  void PrintSelf(ostream& os, vtkIndent indent) override;
31 
33 
36  vtkSetMacro(TimeStep, int);
37  vtkGetMacro(TimeStep, int);
39 
41 
47  vtkSetMacro(TimeValue, double);
48  vtkGetMacro(TimeValue, double);
50 
52 
58 
60 
64  vtkSetMacro(CollectiveIO, int);
65  vtkGetMacro(CollectiveIO, int);
69 
74  virtual void CloseFile() = 0;
75 
76 protected:
79 
80  void WriteData() override = 0; // internal method subclasses must respond to
82  int TimeStep;
83  double TimeValue;
84  char* FileName;
85 
86 private:
88  void operator=(const vtkAbstractParticleWriter&) = delete;
89 };
90 
91 VTK_ABI_NAMESPACE_END
92 #endif
abstract class to write particle data to file
void SetWriteModeToCollective()
When running in parallel, this writer may be capable of Collective IO operations (HDF5).
vtkGetFilePathMacro(FileName)
Set/get the FileName that is being written to.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void WriteData() override=0
void SetWriteModeToIndependent()
When running in parallel, this writer may be capable of Collective IO operations (HDF5).
~vtkAbstractParticleWriter() override
virtual void CloseFile()=0
Close the file after a write.
vtkSetFilePathMacro(FileName)
Set/get the FileName that is being written to.
a simple class to control print indentation
Definition: vtkIndent.h:108
abstract class to write data to file(s)
Definition: vtkWriter.h:35