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