00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00028
#ifndef __vtkXMLPDataWriter_h
00029
#define __vtkXMLPDataWriter_h
00030
00031
#include "vtkXMLWriter.h"
00032
00033
class vtkDataSet;
00034
00035 class VTK_IO_EXPORT vtkXMLPDataWriter :
public vtkXMLWriter
00036 {
00037
public:
00038 vtkTypeRevisionMacro(vtkXMLPDataWriter,
vtkXMLWriter);
00039
void PrintSelf(ostream& os,
vtkIndent indent);
00040
00042
00043 vtkSetMacro(NumberOfPieces,
int);
00044 vtkGetMacro(NumberOfPieces,
int);
00046
00048
00049 vtkSetMacro(StartPiece,
int);
00050 vtkGetMacro(StartPiece,
int);
00051 vtkSetMacro(EndPiece,
int);
00052 vtkGetMacro(EndPiece,
int);
00054
00056
00057 vtkSetMacro(GhostLevel,
int);
00058 vtkGetMacro(GhostLevel,
int);
00060
00062
00065
virtual void SetWriteSummaryFile(
int flag);
00066 vtkGetMacro(WriteSummaryFile,
int);
00067 vtkBooleanMacro(WriteSummaryFile,
int);
00069
00071
int Write();
00072
protected:
00073 vtkXMLPDataWriter();
00074 ~vtkXMLPDataWriter();
00075
00076
virtual vtkXMLWriter* CreatePieceWriter(
int index)=0;
00077
00078
virtual void WritePrimaryElementAttributes();
00079
int WriteData();
00080
virtual void WritePData(
vtkIndent indent);
00081
virtual void WritePPieceAttributes(
int index);
00082
00083
char* CreatePieceFileName(
int index,
const char* path=0);
00084
void SplitFileName();
00085
int WritePieces();
00086
int WritePiece(
int index);
00087
00088 int StartPiece;
00089 int EndPiece;
00090 int NumberOfPieces;
00091 int GhostLevel;
00092 int WriteSummaryFile;
00093 int WriteSummaryFileInitialized;
00094
00095 char* PathName;
00096 char* FileNameBase;
00097 char* FileNameExtension;
00098 char* PieceFileNameExtension;
00099
00100
private:
00101 vtkXMLPDataWriter(
const vtkXMLPDataWriter&);
00102
void operator=(
const vtkXMLPDataWriter&);
00103 };
00104
00105
#endif