00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00024 #ifndef __vtkCVGeometryCache_h
00025 #define __vtkCVGeometryCache_h
00026
00027 #include "vtkPolyDataAlgorithm.h"
00028
00029 class vtkPVGeometryFilter;
00030
00031
00032 struct vtkCVGeometryCacheInternal;
00033
00034
00035 class VTK_EXPORT vtkCVGeometryCache : public vtkPolyDataAlgorithm
00036 {
00037 public:
00038 static vtkCVGeometryCache *New();
00039
00040 vtkTypeRevisionMacro(vtkCVGeometryCache,vtkPolyDataAlgorithm);
00041 void PrintSelf(ostream& os, vtkIndent indent);
00042
00044 void AddGeometry(vtkPVGeometryFilter* filter);
00045
00047 void RemoveAllGeometry();
00048
00049 protected:
00050 vtkCVGeometryCache();
00051 ~vtkCVGeometryCache();
00052
00053 virtual int RequestData(vtkInformation *request,
00054 vtkInformationVector **inputVector,
00055 vtkInformationVector *outputVector);
00056 virtual int RequestInformation(vtkInformation *request,
00057 vtkInformationVector **inputVector,
00058 vtkInformationVector *outputVector);
00059 virtual int RequestDataObject(vtkInformation *request,
00060 vtkInformationVector **inputVector,
00061 vtkInformationVector *outputVector);
00062
00063 vtkCVGeometryCacheInternal* Internal;
00064 private:
00065 vtkCVGeometryCache(const vtkCVGeometryCache&);
00066 void operator=(const vtkCVGeometryCache&);
00067 };
00068
00069
00070 #endif
00071
00072