36 #ifndef __vtkvmtkMinHeap_h 37 #define __vtkvmtkMinHeap_h 39 #include "vtkObject.h" 40 #include "vtkDoubleArray.h" 42 #include "vtkvmtkWin32Header.h" 44 class VTK_VMTK_COMPUTATIONAL_GEOMETRY_EXPORT
vtkvmtkMinHeap :
public vtkObject
48 void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
59 vtkSetObjectMacro(MinHeapScalars,vtkDoubleArray);
60 vtkGetObjectMacro(MinHeapScalars,vtkDoubleArray);
67 void InsertNextId(vtkIdType
id);
71 void UpdateId(vtkIdType
id);
78 vtkIdType RemoveMin();
84 void Swap(vtkIdType loc0, vtkIdType loc1);
85 int IsLeaf(vtkIdType loc);
86 vtkIdType GetLeftChild(vtkIdType loc);
87 vtkIdType GetRightChild(vtkIdType loc);
88 vtkIdType GetParent(vtkIdType loc);
89 void SiftUp(vtkIdType loc);
90 void SiftDown(vtkIdType loc);
91 vtkIdType RemoveAt(vtkIdType loc);
vtkDoubleArray * MinHeapScalars
Implementation of the min heap data structure.