Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dox/IO/vtkImageReader.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkImageReader.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00036 #ifndef __vtkImageReader_h 00037 #define __vtkImageReader_h 00038 00039 #include "vtkImageReader2.h" 00040 00041 class vtkTransform; 00042 00043 #define VTK_FILE_BYTE_ORDER_BIG_ENDIAN 0 00044 #define VTK_FILE_BYTE_ORDER_LITTLE_ENDIAN 1 00045 00046 class VTK_IO_EXPORT vtkImageReader : public vtkImageReader2 00047 { 00048 public: 00049 static vtkImageReader *New(); 00050 vtkTypeRevisionMacro(vtkImageReader,vtkImageReader2); 00051 void PrintSelf(ostream& os, vtkIndent indent); 00052 00054 00056 vtkSetVector6Macro(DataVOI,int); 00057 vtkGetVector6Macro(DataVOI,int); 00059 00061 00062 vtkGetMacro(DataMask,unsigned short); 00063 void SetDataMask(int val) 00064 {if (val == this->DataMask) { return; } 00065 this->DataMask = ((unsigned short)(val)); this->Modified();} 00067 00069 00072 virtual void SetTransform(vtkTransform*); 00073 vtkGetObjectMacro(Transform,vtkTransform); 00075 00076 // Warning !!! 00077 // following should only be used by methods or template helpers, not users 00078 void ComputeInverseTransformedExtent(int inExtent[6], 00079 int outExtent[6]); 00080 void ComputeInverseTransformedIncrements(int inIncr[3], 00081 int outIncr[3]); 00082 00083 int OpenAndSeekFile(int extent[6], int slice); 00084 protected: 00085 vtkImageReader(); 00086 ~vtkImageReader(); 00087 00088 unsigned short DataMask; // Mask each pixel with ... 00089 00090 vtkTransform *Transform; 00091 00092 void ComputeTransformedSpacing (float Spacing[3]); 00093 void ComputeTransformedOrigin (float origin[3]); 00094 void ComputeTransformedExtent(int inExtent[6], 00095 int outExtent[6]); 00096 void ComputeTransformedIncrements(int inIncr[3], 00097 int outIncr[3]); 00098 00099 int DataVOI[6]; 00100 00101 void ExecuteInformation(); 00102 void ExecuteData(vtkDataObject *data); 00103 private: 00104 vtkImageReader(const vtkImageReader&); // Not implemented. 00105 void operator=(const vtkImageReader&); // Not implemented. 00106 }; 00107 00108 #endif