grk::MinHeap< T, IT, L > Class Template Reference

`#include <MinHeap.h>`

## Public Member Functions

| MinHeap ()
void | push (T val)
T | pop (void)
size_t | size (void)

## Private Attributes

std::priority_queue< T, std::vector< T >, MinHeapComparator< T > > | queue
std::mutex | queue_mutex
IT | nextIndex

## Constructor & Destructor Documentation

## MinHeap()

template<typename T , typename IT , typename L >

grk::MinHeap< T, IT, L >::MinHeap | ( |  | ) |

inline

## Member Function Documentation

## pop()

template<typename T , typename IT , typename L >

T grk::MinHeap< T, IT, L >::pop | ( | void |  | ) |

inline

References grk::grk_read(), grk::MinHeap< T, IT, L >::nextIndex, grk::MinHeap< T, IT, L >::queue, and grk::MinHeap< T, IT, L >::queue_mutex.

## push()

template<typename T , typename IT , typename L >

void grk::MinHeap< T, IT, L >::push | ( | T | val | ) |

inline

References grk::grk_read(), grk::MinHeap< T, IT, L >::queue, and grk::MinHeap< T, IT, L >::queue_mutex.

## size()

template<typename T , typename IT , typename L >

size_t grk::MinHeap< T, IT, L >::size | ( | void |  | ) |

inline

References grk::MinHeap< T, IT, L >::queue.

## Member Data Documentation

## nextIndex

template<typename T , typename IT , typename L >

IT grk::MinHeap< T, IT, L >::nextIndex

private

Referenced by grk::MinHeap< T, IT, L >::pop().

## queue

template<typename T , typename IT , typename L >

std::priority_queue<T, std::vector<T>, MinHeapComparator<T> > grk::MinHeap< T, IT, L >::queue

private

Referenced by grk::MinHeap< T, IT, L >::pop(), grk::MinHeap< T, IT, L >::push(), and grk::MinHeap< T, IT, L >::size().

## queue_mutex

template<typename T , typename IT , typename L >

std::mutex grk::MinHeap< T, IT, L >::queue_mutex

private

Referenced by grk::MinHeap< T, IT, L >::pop(), and grk::MinHeap< T, IT, L >::push().

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

- MinHeap.h