VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkPDataSetWriter.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00025 #ifndef __vtkPDataSetWriter_h 00026 #define __vtkPDataSetWriter_h 00027 00028 #include "vtkDataSetWriter.h" 00029 00030 class vtkImageData; 00031 class vtkRectilinearGrid; 00032 class vtkStructuredGrid; 00033 00034 class VTK_PARALLEL_EXPORT vtkPDataSetWriter : public vtkDataSetWriter 00035 { 00036 public: 00037 void PrintSelf(ostream& os, vtkIndent indent); 00038 vtkTypeMacro(vtkPDataSetWriter,vtkDataSetWriter); 00039 static vtkPDataSetWriter *New(); 00040 00042 virtual int Write(); 00043 00045 00046 void SetNumberOfPieces(int num); 00047 vtkGetMacro(NumberOfPieces, int); 00049 00051 00053 vtkSetMacro(GhostLevel, int); 00054 vtkGetMacro(GhostLevel, int); 00056 00058 00062 vtkSetMacro(StartPiece, int); 00063 vtkGetMacro(StartPiece, int); 00064 vtkSetMacro(EndPiece, int); 00065 vtkGetMacro(EndPiece, int); 00067 00069 00071 vtkSetStringMacro(FilePattern); 00072 vtkGetStringMacro(FilePattern); 00074 00076 00081 vtkSetMacro(UseRelativeFileNames, int); 00082 vtkGetMacro(UseRelativeFileNames, int); 00083 vtkBooleanMacro(UseRelativeFileNames, int); 00085 00086 protected: 00087 vtkPDataSetWriter(); 00088 ~vtkPDataSetWriter(); 00089 00090 //BTX 00091 ostream *OpenFile(); 00092 int WriteUnstructuredMetaData(vtkDataSet *input, 00093 char *root, char *str, ostream *fptr); 00094 int WriteImageMetaData(vtkImageData *input, 00095 char *root, char *str, ostream *fptr); 00096 int WriteRectilinearGridMetaData(vtkRectilinearGrid *input, 00097 char *root, char *str, ostream *fptr); 00098 int WriteStructuredGridMetaData(vtkStructuredGrid *input, 00099 char *root, char *str, ostream *fptr); 00100 //ETX 00101 00102 int StartPiece; 00103 int EndPiece; 00104 int NumberOfPieces; 00105 int GhostLevel; 00106 00107 int UseRelativeFileNames; 00108 00109 char *FilePattern; 00110 00111 void DeleteFiles(); 00112 00113 private: 00114 vtkPDataSetWriter(const vtkPDataSetWriter&); // Not implemented 00115 void operator=(const vtkPDataSetWriter&); // Not implemented 00116 }; 00117 00118 #endif