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

vtkCachedStreamingDemandDrivenPipeline.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkCachedStreamingDemandDrivenPipeline.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 =========================================================================*/
00020 #ifndef __vtkCachedStreamingDemandDrivenPipeline_h
00021 #define __vtkCachedStreamingDemandDrivenPipeline_h
00022 
00023 #include "vtkStreamingDemandDrivenPipeline.h"
00024 
00025 class vtkInformationIntegerKey;
00026 class vtkInformationIntegerVectorKey;
00027 class vtkCachedStreamingDemandDrivenPipelineInternals;
00028 
00029 class VTK_FILTERING_EXPORT vtkCachedStreamingDemandDrivenPipeline : 
00030   public vtkStreamingDemandDrivenPipeline
00031 {
00032 public:
00033   static vtkCachedStreamingDemandDrivenPipeline* New();
00034   vtkTypeRevisionMacro(vtkCachedStreamingDemandDrivenPipeline,
00035                        vtkStreamingDemandDrivenPipeline);
00036   void PrintSelf(ostream& os, vtkIndent indent);
00037 
00039 
00040   virtual int Update();
00041   virtual int Update(int port);
00043 
00045 
00047   void SetCacheSize(int size);
00048   vtkGetMacro(CacheSize, int);
00050 
00051 protected:
00052   vtkCachedStreamingDemandDrivenPipeline();
00053   ~vtkCachedStreamingDemandDrivenPipeline();
00054 
00055   virtual int NeedToExecuteData(int outputPort,
00056                                 vtkInformationVector** inInfoVec,
00057                                 vtkInformationVector* outInfoVec);
00058   virtual int ExecuteData(vtkInformation* request,
00059                           vtkInformationVector** inInfoVec,
00060                           vtkInformationVector* outInfoVec);
00061   
00062   int CacheSize;
00063   
00064   vtkDataObject **Data;
00065   unsigned long *Times;
00066 
00067 private:
00068   vtkCachedStreamingDemandDrivenPipelineInternals* CachedStreamingDemandDrivenInternal;
00069 private:
00070   vtkCachedStreamingDemandDrivenPipeline(const vtkCachedStreamingDemandDrivenPipeline&);  // Not implemented.
00071   void operator=(const vtkCachedStreamingDemandDrivenPipeline&);  // Not implemented.
00072 };
00073 
00074 #endif

Generated on Mon Jan 21 23:07:18 2008 for VTK by  doxygen 1.4.3-20050530