00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkImageCacheFilter.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 =========================================================================*/ 00027 #ifndef __vtkImageCacheFilter_h 00028 #define __vtkImageCacheFilter_h 00029 00030 #include "vtkImageToImageFilter.h" 00031 00032 class VTK_IMAGING_EXPORT vtkImageCacheFilter : public vtkImageToImageFilter 00033 { 00034 public: 00035 static vtkImageCacheFilter *New(); 00036 vtkTypeRevisionMacro(vtkImageCacheFilter,vtkImageToImageFilter); 00037 void PrintSelf(ostream& os, vtkIndent indent); 00038 00040 00042 void SetCacheSize(int size); 00043 vtkGetMacro(CacheSize, int); 00045 00047 void UpdateData(vtkDataObject *outData); 00048 00049 protected: 00050 vtkImageCacheFilter(); 00051 ~vtkImageCacheFilter(); 00052 00053 int CacheSize; 00054 00055 vtkImageData **Data; 00056 // I do not have write access to UpdateTime. 00057 unsigned long *Times; 00058 private: 00059 vtkImageCacheFilter(const vtkImageCacheFilter&); // Not implemented. 00060 void operator=(const vtkImageCacheFilter&); // Not implemented. 00061 }; 00062 00063 00064 00065 #endif 00066 00067 00068