00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00025
#ifndef __vtkImageWriter_h
00026
#define __vtkImageWriter_h
00027
00028
#include "vtkProcessObject.h"
00029
00030
class vtkImageData;
00031
00032 class VTK_IO_EXPORT vtkImageWriter :
public vtkProcessObject
00033 {
00034
public:
00035
static vtkImageWriter *
New();
00036 vtkTypeRevisionMacro(vtkImageWriter,
vtkProcessObject);
00037
void PrintSelf(ostream& os,
vtkIndent indent);
00038
00040
00043
void SetFileName(
const char *);
00044 vtkGetStringMacro(FileName);
00046
00048
00051
void SetFilePrefix(
char *filePrefix);
00052 vtkGetStringMacro(FilePrefix);
00054
00056
00057
void SetFilePattern(
const char *filePattern);
00058 vtkGetStringMacro(FilePattern);
00060
00062
00065 vtkSetMacro(FileDimensionality,
int);
00066 vtkGetMacro(FileDimensionality,
int);
00068
00070
00071
virtual void SetInput(
vtkImageData *input);
00072
vtkImageData *GetInput();
00074
00076
virtual void Write();
00077
00078
void DeleteFiles();
00079
00080
protected:
00081 vtkImageWriter();
00082 ~vtkImageWriter();
00083
00084 int FileDimensionality;
00085 char *FilePrefix;
00086 char *FilePattern;
00087 char *FileName;
00088 int FileNumber;
00089 int FileLowerLeft;
00090 char *InternalFileName;
00091
00092
virtual void RecursiveWrite(
int dim,
vtkImageData *region, ofstream *file);
00093
virtual void RecursiveWrite(
int dim,
vtkImageData *cache,
00094
vtkImageData *data, ofstream *file);
00095
virtual void WriteFile(ofstream *file,
vtkImageData *data,
int extent[6]);
00096 virtual void WriteFileHeader(ofstream *,
vtkImageData *) {};
00097 virtual void WriteFileTrailer(ofstream *,
vtkImageData *) {};
00098
00099 int MinimumFileNumber;
00100 int MaximumFileNumber;
00101 int FilesDeleted;
00102
00103
private:
00104 vtkImageWriter(
const vtkImageWriter&);
00105
void operator=(
const vtkImageWriter&);
00106 };
00107
00108
#endif