VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkHyperOctreeToUniformGridFilter.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 =========================================================================*/ 00031 #ifndef vtkHyperOctreeToUniformGridFilter_h 00032 #define vtkHyperOctreeToUniformGridFilter_h 00033 00034 #include "vtkFiltersHyperTreeModule.h" // For export macro 00035 #include "vtkImageAlgorithm.h" 00036 00037 class vtkHyperOctreeCursor; 00038 class vtkCellData; 00039 class vtkDataSetAttributes; 00040 00041 class VTKFILTERSHYPERTREE_EXPORT vtkHyperOctreeToUniformGridFilter : public vtkImageAlgorithm 00042 { 00043 public: 00044 static vtkHyperOctreeToUniformGridFilter *New(); 00045 vtkTypeMacro(vtkHyperOctreeToUniformGridFilter,vtkImageAlgorithm); 00046 void PrintSelf(ostream& os, vtkIndent indent); 00047 00048 protected: 00049 vtkHyperOctreeToUniformGridFilter(); 00050 ~vtkHyperOctreeToUniformGridFilter(); 00051 00052 int RequestInformation (vtkInformation * vtkNotUsed(request), 00053 vtkInformationVector **inputVector, 00054 vtkInformationVector *outputVector); 00055 00056 virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00057 virtual int FillInputPortInformation(int port, vtkInformation *info); 00058 00059 void CopyCellData(int cellExtent[6]); 00060 00061 // Variables used by generate recursively. 00062 // It avoids to pass to much argument. 00063 vtkDataSetAttributes *InputCD; 00064 vtkCellData *OutputCD; 00065 vtkHyperOctreeCursor *Cursor; 00066 int YExtent; 00067 int ZExtent; 00068 vtkImageData *Output; 00069 00070 private: 00071 vtkHyperOctreeToUniformGridFilter(const vtkHyperOctreeToUniformGridFilter&); // Not implemented. 00072 void operator=(const vtkHyperOctreeToUniformGridFilter&); // Not implemented. 00073 }; 00074 00075 #endif