VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkImageMagnify.h 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 =========================================================================*/ 00031 #ifndef __vtkImageMagnify_h 00032 #define __vtkImageMagnify_h 00033 00034 #include "vtkImagingCoreModule.h" // For export macro 00035 #include "vtkThreadedImageAlgorithm.h" 00036 00037 class VTKIMAGINGCORE_EXPORT vtkImageMagnify : public vtkThreadedImageAlgorithm 00038 { 00039 public: 00040 static vtkImageMagnify *New(); 00041 vtkTypeMacro(vtkImageMagnify,vtkThreadedImageAlgorithm); 00042 void PrintSelf(ostream& os, vtkIndent indent); 00043 00045 00047 vtkSetVector3Macro(MagnificationFactors,int); 00048 vtkGetVector3Macro(MagnificationFactors,int); 00050 00052 00054 vtkSetMacro(Interpolate,int); 00055 vtkGetMacro(Interpolate,int); 00056 vtkBooleanMacro(Interpolate,int); 00058 00059 protected: 00060 vtkImageMagnify(); 00061 ~vtkImageMagnify() {}; 00062 00063 int MagnificationFactors[3]; 00064 int Interpolate; 00065 virtual int RequestUpdateExtent(vtkInformation *, 00066 vtkInformationVector **, 00067 vtkInformationVector *); 00068 virtual int RequestInformation(vtkInformation *, 00069 vtkInformationVector **, 00070 vtkInformationVector *); 00071 00072 void ThreadedRequestData(vtkInformation *request, 00073 vtkInformationVector **inputVector, 00074 vtkInformationVector *outputVector, 00075 vtkImageData ***inData, 00076 vtkImageData **outData, 00077 int outExt[6], 00078 int id); 00079 00080 void InternalRequestUpdateExtent(int *inExt, int *outExt); 00081 00082 private: 00083 vtkImageMagnify(const vtkImageMagnify&); // Not implemented. 00084 void operator=(const vtkImageMagnify&); // Not implemented. 00085 }; 00086 00087 #endif 00088 00089 00090 00091