VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkPieceRequestFilter.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 =========================================================================*/ 00022 #ifndef __vtkPieceRequestFilter_h 00023 #define __vtkPieceRequestFilter_h 00024 00025 #include "vtkAlgorithm.h" 00026 00027 class vtkDataObject; 00028 00029 class VTK_PARALLEL_EXPORT vtkPieceRequestFilter : public vtkAlgorithm 00030 { 00031 public: 00032 static vtkPieceRequestFilter *New(); 00033 vtkTypeMacro(vtkPieceRequestFilter,vtkAlgorithm); 00034 void PrintSelf(ostream& os, vtkIndent indent); 00035 00037 00038 vtkSetClampMacro(NumberOfPieces, int, 0, VTK_INT_MAX); 00039 vtkGetMacro(NumberOfPieces, int); 00041 00043 00044 vtkSetClampMacro(Piece, int, 0, VTK_INT_MAX); 00045 vtkGetMacro(Piece, int); 00047 00049 00050 vtkDataObject* GetOutput(); 00051 vtkDataObject* GetOutput(int); 00053 00055 00056 void SetInput(vtkDataObject*); 00057 void SetInput(int, vtkDataObject*); 00059 00061 00062 virtual int ProcessRequest(vtkInformation* request, 00063 vtkInformationVector** inputVector, 00064 vtkInformationVector* outputVector); 00066 00067 protected: 00068 vtkPieceRequestFilter(); 00069 ~vtkPieceRequestFilter() {}; 00070 00071 virtual int RequestDataObject(vtkInformation* request, 00072 vtkInformationVector** inputVector, 00073 vtkInformationVector* outputVector); 00074 00075 virtual int RequestData(vtkInformation*, 00076 vtkInformationVector**, 00077 vtkInformationVector*); 00078 00079 virtual int RequestUpdateExtent(vtkInformation*, 00080 vtkInformationVector**, 00081 vtkInformationVector*); 00082 00083 virtual int FillOutputPortInformation(int port, vtkInformation* info); 00084 virtual int FillInputPortInformation(int port, vtkInformation* info); 00085 00086 int NumberOfPieces; 00087 int Piece; 00088 00089 private: 00090 vtkPieceRequestFilter(const vtkPieceRequestFilter&); // Not implemented. 00091 void operator=(const vtkPieceRequestFilter&); // Not implemented. 00092 }; 00093 00094 #endif 00095 00096