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 "vtkIOParallelXMLModule.h" // For export macro
33 
36 
38 {
39 public:
42  void PrintSelf(ostream& os, vtkIndent indent);
43 
45 
46  vtkSetMacro(NumberOfPieces, int);
47  vtkGetMacro(NumberOfPieces, int);
49 
51 
52  vtkSetMacro(StartPiece, int);
53  vtkGetMacro(StartPiece, int);
55 
57 
61  virtual void SetController(vtkMultiProcessController*);
62  vtkGetObjectMacro(Controller, vtkMultiProcessController);
64 
68  virtual void SetWriteMetaFile(int flag);
69 
70  // See the vtkAlgorithm for a desciption of what these do
74 
75 //BTX
76 protected:
79 
85  virtual void FillDataTypes(vtkCompositeDataSet*);
86 
88 
90 
97  virtual int WriteComposite(vtkCompositeDataSet* compositeData,
98  vtkXMLDataElement* parent, int &currentFileIndex);
100 
102 
110  int ParallelWriteNonCompositeData(
111  vtkDataObject* dObj, vtkXMLDataElement* parentXML,
112  int currentFileIndex);
114 
116 
120  int currentFileIndex, int procId, int dataSetType);
122 
125  virtual void RemoveWrittenFiles(const char* subDirectory);
126 
128 
132 
133 private:
134  vtkXMLPMultiBlockDataWriter(const vtkXMLPMultiBlockDataWriter&); // Not implemented.
135  void operator=(const vtkXMLPMultiBlockDataWriter&); // Not implemented.
136 
137  class vtkInternal;
138  vtkInternal* Internal;
139 //ETX
140 };
141 
142 #endif
vtkMultiProcessController * Controller
parallel writer for vtkHierarchicalBoxDataSet.
Wrapper around std::string to keep symbols short.
Definition: vtkStdString.h:46
writer for vtkMultiBlockDataSet.
Represents an XML element and those nested inside.
Store vtkAlgorithm input/output information.
void PrintSelf(ostream &os, vtkIndent indent)
virtual void RemoveWrittenFiles(const char *SubDirectory)
#define VTKIOPARALLELXML_EXPORT
virtual void FillDataTypes(vtkCompositeDataSet *)
static vtkXMLMultiBlockDataWriter * New()
abstract superclass for composite (multi-block or AMR) datasets
int ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
a simple class to control print indentation
Definition: vtkIndent.h:38
virtual int WriteComposite(vtkCompositeDataSet *compositeData, vtkXMLDataElement *parent, int &writerIdx)
vtkStdString CreatePieceFileName(int Piece)
virtual void SetWriteMetaFile(int flag)
vtkXMLCompositeDataWriterInternals * Internal
Store zero or more vtkInformation instances.
general representation of visualization data
Definition: vtkDataObject.h:64
Multiprocessing communication superclass.