00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00036 #ifndef __vtkHyperOctreeAlgorithm_h
00037 #define __vtkHyperOctreeAlgorithm_h
00038
00039 #include "vtkAlgorithm.h"
00040 #include "vtkHyperOctree.h"
00041
00042 class vtkDataSet;
00043 class vtkHyperOctree;
00044
00045 class VTK_FILTERING_EXPORT vtkHyperOctreeAlgorithm : public vtkAlgorithm
00046 {
00047 public:
00048 vtkTypeMacro(vtkHyperOctreeAlgorithm,vtkAlgorithm);
00049 void PrintSelf(ostream& os, vtkIndent indent);
00050
00052
00053 vtkHyperOctree *GetOutput();
00054 vtkHyperOctree *GetOutput(int);
00055 virtual void SetOutput(vtkDataObject* d);
00057
00059
00060 virtual int ProcessRequest(vtkInformation*,
00061 vtkInformationVector**,
00062 vtkInformationVector*);
00064
00065
00066
00067 vtkDataObject* GetInput();
00068 vtkDataObject *GetInput(int port);
00069 vtkHyperOctree *GetHyperOctreeInput(int port);
00070
00072
00073 void SetInput(vtkDataObject *);
00074 void SetInput(int, vtkDataObject*);
00076
00078
00079 void AddInput(vtkDataObject *);
00080 void AddInput(int, vtkDataObject*);
00082
00083 protected:
00084 vtkHyperOctreeAlgorithm();
00085 ~vtkHyperOctreeAlgorithm();
00086
00087
00088 virtual int RequestInformation(vtkInformation* request,
00089 vtkInformationVector** inputVector,
00090 vtkInformationVector* outputVector);
00091
00093
00095 virtual int RequestData(vtkInformation* request,
00096 vtkInformationVector** inputVector,
00097 vtkInformationVector* outputVector);
00099
00101
00103 virtual int RequestUpdateExtent(vtkInformation*,
00104 vtkInformationVector**,
00105 vtkInformationVector*);
00107
00108
00109
00111
00112 virtual void ExecuteData(vtkDataObject *output);
00113 virtual void Execute();
00115
00116
00117 virtual int FillOutputPortInformation(int port, vtkInformation* info);
00118 virtual int FillInputPortInformation(int port, vtkInformation* info);
00119
00120 private:
00121 vtkHyperOctreeAlgorithm(const vtkHyperOctreeAlgorithm&);
00122 void operator=(const vtkHyperOctreeAlgorithm&);
00123 };
00124
00125 #endif