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 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 =========================================================================*/ 00032 #ifndef __vtkImageReader_h 00033 #define __vtkImageReader_h 00034 00035 #include "vtkImageReader2.h" 00036 00037 class vtkTransform; 00038 00039 #define VTK_FILE_BYTE_ORDER_BIG_ENDIAN 0 00040 #define VTK_FILE_BYTE_ORDER_LITTLE_ENDIAN 1 00041 00042 class VTK_IO_EXPORT vtkImageReader : public vtkImageReader2 00043 { 00044 public: 00045 static vtkImageReader *New(); 00046 vtkTypeRevisionMacro(vtkImageReader,vtkImageReader2); 00047 void PrintSelf(ostream& os, vtkIndent indent); 00048 00050 00052 vtkSetVector6Macro(DataVOI,int); 00053 vtkGetVector6Macro(DataVOI,int); 00055 00057 00058 vtkGetMacro(DataMask,unsigned short); 00059 void SetDataMask(int val) 00060 {if (val == this->DataMask) { return; } 00061 this->DataMask = ((unsigned short)(val)); this->Modified();} 00063 00065 00068 virtual void SetTransform(vtkTransform*); 00069 vtkGetObjectMacro(Transform,vtkTransform); 00071 00072 // Warning !!! 00073 // following should only be used by methods or template helpers, not users 00074 void ComputeInverseTransformedExtent(int inExtent[6], 00075 int outExtent[6]); 00076 void ComputeInverseTransformedIncrements(int inIncr[3], 00077 int outIncr[3]); 00078 00079 int OpenAndSeekFile(int extent[6], int slice); 00080 00082 00083 vtkSetStringMacro(ScalarArrayName); 00084 vtkGetStringMacro(ScalarArrayName); 00086 00087 protected: 00088 vtkImageReader(); 00089 ~vtkImageReader(); 00090 00091 unsigned short DataMask; // Mask each pixel with ... 00092 00093 vtkTransform *Transform; 00094 00095 void ComputeTransformedSpacing (double Spacing[3]); 00096 void ComputeTransformedOrigin (double origin[3]); 00097 void ComputeTransformedExtent(int inExtent[6], 00098 int outExtent[6]); 00099 void ComputeTransformedIncrements(int inIncr[3], 00100 int outIncr[3]); 00101 00102 int DataVOI[6]; 00103 00104 char *ScalarArrayName; 00105 00106 void ExecuteInformation(); 00107 void ExecuteData(vtkDataObject *data); 00108 private: 00109 vtkImageReader(const vtkImageReader&); // Not implemented. 00110 void operator=(const vtkImageReader&); // Not implemented. 00111 }; 00112 00113 #endif