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 =========================================================================*/
28 #ifndef __vtkXMLPMultiBlockDataWriter_h
29 #define __vtkXMLPMultiBlockDataWriter_h
30 
31 #include "vtkIOParallelModule.h" // For export macro
33 
36 
37 class VTKIOPARALLEL_EXPORT vtkXMLPMultiBlockDataWriter : public vtkXMLMultiBlockDataWriter
38 {
39 public:
42  void PrintSelf(ostream& os, vtkIndent indent);
43 
45 
49  virtual void SetController(vtkMultiProcessController*);
50  vtkGetObjectMacro(Controller, vtkMultiProcessController);
52 
56  virtual void SetWriteMetaFile(int flag);
57 
58 //BTX
59 protected:
62 
68  virtual void FillDataTypes(vtkCompositeDataSet*);
69 
71 
73 
80  virtual int WriteComposite(vtkCompositeDataSet* compositeData,
81  vtkXMLDataElement* parent, int &currentFileIndex);
83 
85 
93  int ParallelWriteNonCompositeData(
94  vtkDataObject* dObj, vtkXMLDataElement* parentXML,
95  int currentFileIndex);
97 
99 
103  int currentFileIndex, int procId, int dataSetType);
105 
108  virtual void RemoveWrittenFiles(const char* subDirectory);
109 
110 private:
111  vtkXMLPMultiBlockDataWriter(const vtkXMLPMultiBlockDataWriter&); // Not implemented.
112  void operator=(const vtkXMLPMultiBlockDataWriter&); // Not implemented.
113 
114  class vtkInternal;
115  vtkInternal* Internal;
116 //ETX
117 };
118 
119 #endif
120 
121