A Binary Heap implemented specifically for the Timer class in Decaf Util.
More...
#include <src/main/decaf/internal/util/TimerTaskHeap.h>
|
| TimerTaskHeap () |
|
virtual | ~TimerTaskHeap () |
|
Pointer< TimerTask > | peek () |
| Peaks at the Head of the Heap, returns the task with the nearest scheduled run time.
|
|
bool | isEmpty () const |
|
std::size_t | size () const |
|
void | insert (const Pointer< TimerTask > &task) |
| Inserts the specified Task into the heap, heap is reordered to reflect the addition of a new element.
|
|
void | remove (std::size_t pos) |
| Removes the Task at the specified position from the heap, resorts the heap from the position down to the bottom.
|
|
void | reset () |
| Clear all contents from the heap.
|
|
void | adjustMinimum () |
| Resorts the heap starting at the top.
|
|
std::size_t | deleteIfCancelled () |
| Runs through the heap removing all cancelled Tasks from it, this is not normally used but in case a a cancellation of a large number of tasks the user can perform this purge.
|
|
std::size_t | find (const Pointer< TimerTask > &task) const |
| Searches the heap for the specified TimerTask element and returns its position in the heap.
|
|
A Binary Heap implemented specifically for the Timer class in Decaf Util.
- Since
- 1.0
◆ TimerTaskHeap()
decaf::internal::util::TimerTaskHeap::TimerTaskHeap |
( |
| ) |
|
◆ ~TimerTaskHeap()
virtual decaf::internal::util::TimerTaskHeap::~TimerTaskHeap |
( |
| ) |
|
|
virtual |
◆ adjustMinimum()
void decaf::internal::util::TimerTaskHeap::adjustMinimum |
( |
| ) |
|
Resorts the heap starting at the top.
◆ deleteIfCancelled()
std::size_t decaf::internal::util::TimerTaskHeap::deleteIfCancelled |
( |
| ) |
|
Runs through the heap removing all cancelled Tasks from it, this is not normally used but in case a a cancellation of a large number of tasks the user can perform this purge.
- Returns
- the number of task that were removed from the heap becuase they were cancelled.
◆ find()
Searches the heap for the specified TimerTask element and returns its position in the heap.
Returns the unsigned equivalent of -1 if the element is not found.
- Returns
- the position in the Heap where the Task is stored, or npos.
◆ insert()
Inserts the specified Task into the heap, heap is reordered to reflect the addition of a new element.
- Parameters
-
◆ isEmpty()
bool decaf::internal::util::TimerTaskHeap::isEmpty |
( |
| ) |
const |
- Returns
- true if the heap is empty.
◆ peek()
Peaks at the Head of the Heap, returns the task with the nearest scheduled run time.
- Returns
- The TimerTask that is scheduled to be executed next if the Heap is empty a Null Pointer value is returned.
◆ remove()
void decaf::internal::util::TimerTaskHeap::remove |
( |
std::size_t | pos | ) |
|
Removes the Task at the specified position from the heap, resorts the heap from the position down to the bottom.
- Parameters
-
pos | The position at which to remove the TimerTask and begin a resort of the heap. |
◆ reset()
void decaf::internal::util::TimerTaskHeap::reset |
( |
| ) |
|
Clear all contents from the heap.
◆ size()
std::size_t decaf::internal::util::TimerTaskHeap::size |
( |
| ) |
const |
- Returns
- the size of the heap.
The documentation for this class was generated from the following file: