VTK
vtkImageWriter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImageWriter.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
25 #ifndef vtkImageWriter_h
26 #define vtkImageWriter_h
27 
28 #include "vtkIOImageModule.h" // For export macro
29 #include "vtkImageAlgorithm.h"
30 
32 {
33 public:
34  static vtkImageWriter *New();
36  void PrintSelf(ostream& os, vtkIndent indent);
37 
39 
42  vtkSetStringMacro(FileName);
43  vtkGetStringMacro(FileName);
45 
47 
50  vtkSetStringMacro(FilePrefix);
51  vtkGetStringMacro(FilePrefix);
53 
55 
56  vtkSetStringMacro(FilePattern);
57  vtkGetStringMacro(FilePattern);
59 
61 
64  vtkSetMacro(FileDimensionality, int);
65  vtkGetMacro(FileDimensionality, int);
67 
68 //BTX
70 
72 //ETX
74 
76  virtual void Write();
77 
78  void DeleteFiles();
79 
80 protected:
83 
85  char *FilePrefix;
86  char *FilePattern;
87  char *FileName;
91 
92  virtual void RecursiveWrite(int dim,
93  vtkImageData *region,
94  vtkInformation*inInfo,
95  ofstream *file);
96  virtual void RecursiveWrite(int dim,
97  vtkImageData *cache,
99  vtkInformation* inInfo,
100  ofstream *file);
101  virtual void WriteFile(ofstream *file, vtkImageData *data,
102  int extent[6], int wExtent[6]);
103  virtual void WriteFileHeader(ofstream *, vtkImageData *, int [6]) {}
104  virtual void WriteFileTrailer(ofstream *, vtkImageData *) {}
105 
106  // This is called by the superclass.
107  // This is the method you should override.
108  virtual int RequestData(vtkInformation *request,
109  vtkInformationVector** inputVector,
110  vtkInformationVector* outputVector);
111 
115 
116 private:
117  vtkImageWriter(const vtkImageWriter&); // Not implemented.
118  void operator=(const vtkImageWriter&); // Not implemented.
119 };
120 
121 #endif
vtkgl::data
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: vtkgl.h:11339
vtkImageWriter::FileName
char * FileName
Definition: vtkImageWriter.h:87
vtkImageWriter::MinimumFileNumber
int MinimumFileNumber
Definition: vtkImageWriter.h:112
vtkImageWriter
Writes images to files.
Definition: vtkImageWriter.h:32
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
vtkImageWriter::WriteFileHeader
virtual void WriteFileHeader(ofstream *, vtkImageData *, int[6])
Definition: vtkImageWriter.h:103
vtkIOImageModule.h
vtkImageWriter::FilePrefix
char * FilePrefix
Definition: vtkImageWriter.h:85
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkImageWriter::WriteFile
virtual void WriteFile(ofstream *file, vtkImageData *data, int extent[6], int wExtent[6])
vtkImageAlgorithm.h
VTKIOIMAGE_EXPORT
#define VTKIOIMAGE_EXPORT
Definition: vtkIOImageModule.h:15
vtkImageWriter::InternalFileName
char * InternalFileName
Definition: vtkImageWriter.h:90
vtkImageAlgorithm
Generic algorithm superclass for image algs.
Definition: vtkImageAlgorithm.h:40
vtkImageWriter::~vtkImageWriter
~vtkImageWriter()
vtkImageWriter::FilePattern
char * FilePattern
Definition: vtkImageWriter.h:86
vtkImageWriter::MaximumFileNumber
int MaximumFileNumber
Definition: vtkImageWriter.h:113
vtkImageWriter::FilesDeleted
int FilesDeleted
Definition: vtkImageWriter.h:114
vtkImageWriter::vtkImageWriter
vtkImageWriter()
vtkImageWriter::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkImageWriter::RecursiveWrite
virtual void RecursiveWrite(int dim, vtkImageData *region, vtkInformation *inInfo, ofstream *file)
vtkImageData
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkSetStringMacro
#define vtkSetStringMacro(name)
Definition: vtkSetGet.h:104
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkGetStringMacro
vtkGetStringMacro(ExtensionsString)
vtkImageWriter::DeleteFiles
void DeleteFiles()
vtkImageWriter::Write
virtual void Write()
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkImageWriter::New
static vtkImageWriter * New()
vtkImageWriter::WriteFileTrailer
virtual void WriteFileTrailer(ofstream *, vtkImageData *)
Definition: vtkImageWriter.h:104
vtkImageWriter::FileNumber
int FileNumber
Definition: vtkImageWriter.h:88
vtkX3D::extent
@ extent
Definition: vtkX3D.h:345
vtkImageWriter::FileLowerLeft
int FileLowerLeft
Definition: vtkImageWriter.h:89
vtkImageWriter::FileDimensionality
int FileDimensionality
Definition: vtkImageWriter.h:84
vtkImageWriter::RequestData
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkImageWriter::RecursiveWrite
virtual void RecursiveWrite(int dim, vtkImageData *cache, vtkImageData *data, vtkInformation *inInfo, ofstream *file)
vtkImageWriter::GetInput
vtkImageData * GetInput()