VTK
vtkXdmf3Writer.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkXdmf3Writer.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
29 #ifndef vtkXdmf3Writer_h
30 #define vtkXdmf3Writer_h
31 
32 #include "vtkIOXdmf3Module.h" // For export macro
33 
34 #include "vtkDataObjectAlgorithm.h"
35 
36 class vtkDoubleArray;
37 
38 class VTKIOXDMF3_EXPORT vtkXdmf3Writer : public vtkDataObjectAlgorithm
39 {
40 public:
41  static vtkXdmf3Writer *New();
43  void PrintSelf(ostream& os, vtkIndent indent) override;
44 
48  virtual void SetInputData(vtkDataObject* dobj);
49 
51 
54  vtkSetStringMacro(FileName);
55  vtkGetStringMacro(FileName);
57 
59 
63  void SetGhostLevel(int) {}
64  int GetGhostLevel() {return 0;}
66 
72  virtual int Write();
73 
75 
79  vtkSetMacro(LightDataLimit, unsigned int);
80  vtkGetMacro(LightDataLimit, unsigned int);
82 
84 
89  vtkSetMacro(WriteAllTimeSteps, bool);
90  vtkGetMacro(WriteAllTimeSteps, bool);
91  vtkBooleanMacro(WriteAllTimeSteps, bool);
93 
94 protected:
96  ~vtkXdmf3Writer();
97 
98  //Overridden to set up automatic loop over time steps.
101  vtkInformationVector*) override;
102  //Overridden to continue automatic loop over time steps.
105  vtkInformationVector*) override;
106  //Write out the input data objects as XDMF and HDF output files.
109  vtkInformationVector*) override;
110 
111  char *FileName;
112  unsigned int LightDataLimit;
115  int MyRank;
116 
119  void WriteDataInternal (vtkInformation* request);
120  int CheckParametersInternal (int NumberOfProcesses, int MyRank);
121  virtual int CheckParameters ();
122  // If writing in parallel multiple time steps exchange after each time step
123  // if we should continue the execution. Pass local continueExecution as a
124  // parameter and return the global continueExecution.
125  virtual int GlobalContinueExecuting(int localContinueExecution);
126 
128 
129 private:
130  vtkXdmf3Writer(const vtkXdmf3Writer&) = delete;
131  void operator=(const vtkXdmf3Writer&) = delete;
132 
133  class Internals;
134  Internals *Internal;
135 };
136 
137 #endif /* vtkXdmf3Writer_h */
vtkXdmf3Writer::OriginalInput
vtkDataObject * OriginalInput
Definition: vtkXdmf3Writer.h:118
vtkXdmf3Writer::FileName
char * FileName
Definition: vtkXdmf3Writer.h:111
vtkDataObjectAlgorithm::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkXdmf3Writer::WriteAllTimeSteps
bool WriteAllTimeSteps
Definition: vtkXdmf3Writer.h:113
vtkXdmf3Writer::MyRank
int MyRank
Definition: vtkXdmf3Writer.h:115
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
vtkDataObjectAlgorithm
Superclass for algorithms that produce only data object as output.
Definition: vtkDataObjectAlgorithm.h:43
vtkXdmf3Writer
write eXtensible Data Model and Format files
Definition: vtkXdmf3Writer.h:38
vtkXdmf3Writer::SetGhostLevel
void SetGhostLevel(int)
We never write out ghost cells.
Definition: vtkXdmf3Writer.h:63
vtkXdmf3Writer::GetGhostLevel
int GetGhostLevel()
Definition: vtkXdmf3Writer.h:64
vtkDataObjectAlgorithm::RequestUpdateExtent
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Definition: vtkDataObjectAlgorithm.h:115
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkXdmf3Writer::InitWriters
bool InitWriters
Definition: vtkXdmf3Writer.h:127
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkXdmf3Writer::NumberOfProcesses
int NumberOfProcesses
Definition: vtkXdmf3Writer.h:114
vtkDataObjectAlgorithm::New
static vtkDataObjectAlgorithm * New()
vtkDataObjectAlgorithm::SetInputData
void SetInputData(vtkDataObject *)
Assign a data object as input.
vtkDoubleArray
dynamic, self-adjusting array of double
Definition: vtkDoubleArray.h:41
vtkDataObjectAlgorithm::RequestData
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Definition: vtkDataObjectAlgorithm.h:122
vtkXdmf3Writer::LightDataLimit
unsigned int LightDataLimit
Definition: vtkXdmf3Writer.h:112
vtkDataObjectAlgorithm.h
vtkDataObjectAlgorithm::RequestInformation
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkDataObject
general representation of visualization data
Definition: vtkDataObject.h:64
vtkXdmf3Writer::TimeValues
vtkDoubleArray * TimeValues
Definition: vtkXdmf3Writer.h:117