VTK
vtkXMLPMultiBlockDataWriter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkXMLPMultiBlockDataWriter.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 =========================================================================*/
26 #ifndef vtkXMLPMultiBlockDataWriter_h
27 #define vtkXMLPMultiBlockDataWriter_h
28 
29 #include "vtkIOParallelXMLModule.h" // For export macro
31 
34 
35 class VTKIOPARALLELXML_EXPORT vtkXMLPMultiBlockDataWriter : public vtkXMLMultiBlockDataWriter
36 {
37 public:
40  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
41 
43 
46  vtkSetMacro(NumberOfPieces, int);
47  vtkGetMacro(NumberOfPieces, int);
49 
51 
54  vtkSetMacro(StartPiece, int);
55  vtkGetMacro(StartPiece, int);
57 
59 
66  virtual void SetController(vtkMultiProcessController*);
67  vtkGetObjectMacro(Controller, vtkMultiProcessController);
69 
75  void SetWriteMetaFile(int flag) VTK_OVERRIDE;
76 
77  // See the vtkAlgorithm for a desciption of what these do
80  vtkInformationVector*) VTK_OVERRIDE;
81 
82 protected:
84  ~vtkXMLPMultiBlockDataWriter() VTK_OVERRIDE;
85 
94  void FillDataTypes(vtkCompositeDataSet*) VTK_OVERRIDE;
95 
97 
107  int WriteComposite(vtkCompositeDataSet* compositeData,
108  vtkXMLDataElement* parent, int &currentFileIndex) VTK_OVERRIDE;
109 
121  int ParallelWriteNonCompositeData(
122  vtkDataObject* dObj, vtkXMLDataElement* parentXML,
123  int currentFileIndex);
124 
130  virtual vtkStdString CreatePieceFileName(
131  int currentFileIndex, int procId, int dataSetType);
132 
137  void RemoveWrittenFiles(const char* subDirectory) VTK_OVERRIDE;
138 
140 
143  int StartPiece;
144  int NumberOfPieces;
146 
147 private:
148  vtkXMLPMultiBlockDataWriter(const vtkXMLPMultiBlockDataWriter&) VTK_DELETE_FUNCTION;
149  void operator=(const vtkXMLPMultiBlockDataWriter&) VTK_DELETE_FUNCTION;
150 
151  class vtkInternal;
152  vtkInternal* Internal;
153 
154 };
155 
156 #endif
parallel writer for vtkHierarchicalBoxDataSet.
Wrapper around std::string to keep symbols short.
Definition: vtkStdString.h:41
writer for vtkMultiBlockDataSet.
Represents an XML element and those nested inside.
Store vtkAlgorithm input/output information.
int ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
See the vtkAlgorithm for a desciption of what these do.
static vtkXMLMultiBlockDataWriter * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
abstract superclass for composite (multi-block or AMR) datasets
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
virtual void SetWriteMetaFile(int flag)
Get/Set whether this instance will write the meta-file.
Store zero or more vtkInformation instances.
general representation of visualization data
Definition: vtkDataObject.h:58
Multiprocessing communication superclass.