00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00024 #ifndef __vtkHierarchicalBoxDataSetAlgorithm_h
00025 #define __vtkHierarchicalBoxDataSetAlgorithm_h
00026 
00027 #include "vtkAlgorithm.h"
00028 
00029 class vtkHierarchicalBoxDataSet;
00030 class VTK_FILTERING_EXPORT vtkHierarchicalBoxDataSetAlgorithm : public vtkAlgorithm
00031 {
00032 public:
00033   static vtkHierarchicalBoxDataSetAlgorithm* New();
00034   vtkTypeMacro(vtkHierarchicalBoxDataSetAlgorithm, vtkAlgorithm);
00035   void PrintSelf(ostream& os, vtkIndent indent);
00036 
00038 
00039   vtkHierarchicalBoxDataSet* GetOutput();
00040   vtkHierarchicalBoxDataSet* GetOutput(int);
00042 
00044 
00051   void SetInput(vtkDataObject*);
00052   void SetInput(int, vtkDataObject*);
00054 
00056 
00057   virtual int ProcessRequest(vtkInformation* request, 
00058                              vtkInformationVector** inputVector, 
00059                              vtkInformationVector* outputVector);
00061 
00062 
00063 protected:
00064   vtkHierarchicalBoxDataSetAlgorithm();
00065   ~vtkHierarchicalBoxDataSetAlgorithm();
00066 
00068 
00070   virtual int RequestDataObject(vtkInformation*, 
00071                                 vtkInformationVector**, 
00072                                 vtkInformationVector*) {return 1;};
00074 
00076 
00078   virtual int RequestInformation(vtkInformation*, 
00079                                  vtkInformationVector**, 
00080                                  vtkInformationVector*) {return 1;};
00082 
00084 
00086   virtual int RequestData(vtkInformation*, 
00087                           vtkInformationVector**, 
00088                           vtkInformationVector*) {return 1;};
00090   
00092 
00094   virtual int RequestUpdateExtent(vtkInformation*,
00095                                   vtkInformationVector**,
00096                                   vtkInformationVector*)
00097     {
00098       return 1;
00099     };
00101 
00102   
00103   virtual vtkExecutive* CreateDefaultExecutive();
00104 
00105   
00106   virtual int FillOutputPortInformation(int port, vtkInformation* info);
00107   virtual int FillInputPortInformation(int port, vtkInformation* info);
00108 
00109   vtkDataObject *GetInput(int port);
00110 
00111 private:
00112   vtkHierarchicalBoxDataSetAlgorithm(const vtkHierarchicalBoxDataSetAlgorithm&); 
00113   void operator=(const vtkHierarchicalBoxDataSetAlgorithm&); 
00114 
00115 };
00116 
00117 #endif
00118 
00119