Provided by: libcoin80-doc_3.1.4~abc9f50-4ubuntu2_all bug

NAME

       SbHeap -

       The SbHeap class is a generic heap class.

       FIXME: write doc.

SYNOPSIS

       #include <Inventor/SbHeap.h>

   Public Member Functions
       SbHeap (const SbHeapFuncs &SbHeapFuncs, const int initsize=1024)
       ~SbHeap ()
       void emptyHeap (void)
       int size (void) const
       int add (void *obj)
       void remove (const int pos)
       void remove (void *obj)
       void * extractMin ()
       void * getMin ()
       void * operator[] (const int idx)
       void newWeight (void *obj, int hpos=-1)
       SbBool buildHeap (SbBool(*progresscb)(float percentage, void *data)=NULL, void *data=NULL)
       SbBool traverseHeap (SbBool(*func)(void *, void *), void *userdata) const

Detailed Description

       The SbHeap class is a generic heap class.

       FIXME: write doc.

       Note: SbHeap is an extension versus the Open Inventor API.

Constructor & Destructor Documentation

   SbHeap::SbHeap (const SbHeapFuncs &hFuncs, const intinitsize = 1024)
       Constructor. hFuncs specifies the functions for modifying and returning information about
       the heap object, initsize specifies the initial number of allocated elements. This array
       will automatically grow when necessary, but if you know approximately how many elements
       the heap will contain, you should supply this to avoid some reallocs.

   SbHeap::~SbHeap (void)
       Destructor.

Member Function Documentation

   void SbHeap::emptyHeap (void)
       Removes all the elements from the heap.

   int SbHeap::size (void) const
       Returns the number of elements in the heap.

   int SbHeap::add (void *obj)
       Adds an element to the heap. Returns the element's heap position.

   void SbHeap::remove (const intidx)
       Removes an element from the heap.

   void SbHeap::remove (void *obj)
       This is an overloaded member function, provided for convenience. It differs from the above
       function only in what argument(s) it accepts.

   void * SbHeap::extractMin (void)
       Returns and removes the first element in the heap, or NULL if heap is empty.

   void * SbHeap::getMin (void)
       Returns the first element in the heap, or NULL if heap is empty.

   void * SbHeap::operator[] (const intidx)
       Returns the heap element at index idx in the heap.

   void SbHeap::newWeight (void *obj, inthpos = -1)
       Fixes heap if necessary when the element at hpos has changed weight. If you know the
       element's heap position you can supply it in hpos.

   SbBool SbHeap::buildHeap (SbBool(*)(float percentage, void *data)progresscb = NULL, void *data
       = NULL)
       Builds heap out of randomly ordered data-structure.

   SbBool SbHeap::traverseHeap (SbBool(*)(void *, void *)func, void *userdata) const
       Traverses each heap elements, and calls func for each element.

Author

       Generated automatically by Doxygen for Coin from the source code.