IO/vtkXMLPDataWriter.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00024 #ifndef __vtkXMLPDataWriter_h
00025 #define __vtkXMLPDataWriter_h
00026
00027 #include "vtkXMLWriter.h"
00028
00029 class vtkCallbackCommand;
00030 class vtkDataSet;
00031
00032 class VTK_IO_EXPORT vtkXMLPDataWriter : public vtkXMLWriter
00033 {
00034 public:
00035 vtkTypeRevisionMacro(vtkXMLPDataWriter,vtkXMLWriter);
00036 void PrintSelf(ostream& os, vtkIndent indent);
00037
00039
00040 vtkSetMacro(NumberOfPieces, int);
00041 vtkGetMacro(NumberOfPieces, int);
00043
00045
00046 vtkSetMacro(StartPiece, int);
00047 vtkGetMacro(StartPiece, int);
00048 vtkSetMacro(EndPiece, int);
00049 vtkGetMacro(EndPiece, int);
00051
00053
00054 vtkSetMacro(GhostLevel, int);
00055 vtkGetMacro(GhostLevel, int);
00057
00059
00062 virtual void SetWriteSummaryFile(int flag);
00063 vtkGetMacro(WriteSummaryFile, int);
00064 vtkBooleanMacro(WriteSummaryFile, int);
00066
00067 protected:
00068 vtkXMLPDataWriter();
00069 ~vtkXMLPDataWriter();
00070
00071
00072 virtual int WriteInternal();
00073
00074 virtual vtkXMLWriter* CreatePieceWriter(int index)=0;
00075
00076 virtual void WritePrimaryElementAttributes();
00077 int WriteData();
00078 virtual void WritePData(vtkIndent indent);
00079 virtual void WritePPieceAttributes(int index);
00080
00081 char* CreatePieceFileName(int index, const char* path=0);
00082 void SplitFileName();
00083 int WritePieces();
00084 int WritePiece(int index);
00085
00086
00087 static void ProgressCallbackFunction(vtkObject*, unsigned long, void*,
00088 void*);
00089
00090 virtual void ProgressCallback(vtkProcessObject* w);
00091
00092 int StartPiece;
00093 int EndPiece;
00094 int NumberOfPieces;
00095 int GhostLevel;
00096 int WriteSummaryFile;
00097 int WriteSummaryFileInitialized;
00098
00099 char* PathName;
00100 char* FileNameBase;
00101 char* FileNameExtension;
00102 char* PieceFileNameExtension;
00103
00104
00105 vtkCallbackCommand* ProgressObserver;
00106
00107 private:
00108 vtkXMLPDataWriter(const vtkXMLPDataWriter&);
00109 void operator=(const vtkXMLPDataWriter&);
00110 };
00111
00112 #endif