vrecko
virtual reality framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ThinHeap< _NodeClass, _keyType > Class Template Reference

#include <Heaps.h>

Inheritance diagram for ThinHeap< _NodeClass, _keyType >:
GenericHeap< _NodeClass, _keyType >

Classes

class  ThinHeapNode
 

Public Member Functions

 ThinHeap (void)
 
virtual void Insert (_NodeClass *node)
 
virtual _NodeClass * ExtractMin (void)
 
virtual void DecreaseKey (_NodeClass *node, _keyType value)
 
virtual _NodeClass * GetMin (void)
 
virtual _NodeClass * Delete (_NodeClass *node)
 
virtual void Union (ThinHeap< _NodeClass, _keyType > *heap)
 
virtual bool IsEmpty ()
 

Protected Member Functions

void Consolidate (void)
 
void Link (_NodeClass *child, _NodeClass *parent)
 
virtual void RepairViolations (_NodeClass *node)
 

Protected Attributes

_NodeClass * head
 
_NodeClass * min
 

Constructor & Destructor Documentation

template<class _NodeClass, class _keyType>
ThinHeap< _NodeClass, _keyType >::ThinHeap ( void  )

Member Function Documentation

template<class _NodeClass, class _keyType>
void ThinHeap< _NodeClass, _keyType >::Consolidate ( void  )
protected
template<class _NodeClass, class _keyType>
virtual void ThinHeap< _NodeClass, _keyType >::DecreaseKey ( _NodeClass *  node,
_keyType  value 
)
virtual
template<class _NodeClass, class _keyType>
virtual _NodeClass* ThinHeap< _NodeClass, _keyType >::Delete ( _NodeClass *  node)
virtual
template<class _NodeClass, class _keyType>
virtual _NodeClass* ThinHeap< _NodeClass, _keyType >::ExtractMin ( void  )
virtual
template<class _NodeClass, class _keyType>
virtual _NodeClass* ThinHeap< _NodeClass, _keyType >::GetMin ( void  )
virtual
template<class _NodeClass, class _keyType>
virtual void ThinHeap< _NodeClass, _keyType >::Insert ( _NodeClass *  node)
virtual
template<class _NodeClass, class _keyType>
virtual bool ThinHeap< _NodeClass, _keyType >::IsEmpty ( )
inlinevirtual
template<class _NodeClass, class _keyType>
void ThinHeap< _NodeClass, _keyType >::Link ( _NodeClass *  child,
_NodeClass *  parent 
)
protected
template<class _NodeClass, class _keyType>
virtual void ThinHeap< _NodeClass, _keyType >::RepairViolations ( _NodeClass *  node)
protectedvirtual
template<class _NodeClass, class _keyType>
virtual void ThinHeap< _NodeClass, _keyType >::Union ( ThinHeap< _NodeClass, _keyType > *  heap)
virtual

Member Data Documentation

template<class _NodeClass, class _keyType>
_NodeClass* ThinHeap< _NodeClass, _keyType >::head
protected
template<class _NodeClass, class _keyType>
_NodeClass* ThinHeap< _NodeClass, _keyType >::min
protected

The documentation for this class was generated from the following file: