00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00022 #ifndef __vtkPipelineSize_h
00023 #define __vtkPipelineSize_h
00024
00025 #include "vtkObject.h"
00026 class vtkAlgorithm;
00027 class vtkPolyDataMapper;
00028
00029 class VTK_PARALLEL_EXPORT vtkPipelineSize : public vtkObject
00030 {
00031 public:
00032 static vtkPipelineSize* New();
00033 vtkTypeRevisionMacro(vtkPipelineSize,vtkObject);
00034 virtual void PrintSelf(ostream& os, vtkIndent indent);
00035
00037
00041 unsigned long GetEstimatedSize(vtkAlgorithm *input, int inputPort,
00042 int connection);
00044
00046
00049 unsigned long GetNumberOfSubPieces(unsigned long memoryLimit,
00050 vtkPolyDataMapper *mapper);
00052
00053 protected:
00054 vtkPipelineSize() {};
00055 void GenericComputeSourcePipelineSize(vtkAlgorithm *src,
00056 int outputPort,
00057 unsigned long size[3]);
00058 void ComputeSourcePipelineSize(vtkAlgorithm *src,
00059 int outputPort,
00060 unsigned long size[3]);
00061 void ComputeOutputMemorySize( vtkAlgorithm *src,
00062 int outputPort,
00063 unsigned long *inputSize,
00064 unsigned long size[2] );
00065 void GenericComputeOutputMemorySize( vtkAlgorithm *src,
00066 int outputPort,
00067 unsigned long *inputSize,
00068 unsigned long size[2] );
00069
00070
00071 private:
00072 vtkPipelineSize(const vtkPipelineSize&);
00073 void operator=(const vtkPipelineSize&);
00074 };
00075
00076 #endif
00077
00078