![]() |
ULIS
dev4.0.7
Utility Library for Imaging Systems
|
The TQueue class provides a simple dynamic queue based on a forward list. More...
Public Member Functions | |
TQueue () | |
TQueue (const TQueue< T > &iOther)=delete | |
TQueue (TQueue< T > &&iOther) | |
~TQueue () | |
T & | Back () |
const T & | Back () const |
void | Clear () |
template<class... Args> | |
void | Emplace (Args &&... args) |
T & | Front () |
const T & | Front () const |
bool | IsEmpty () const |
TQueue< T > & | operator= (const TQueue< T > &iOther)=delete |
TQueue< T > & | operator= (TQueue< T > &&iOther)=delete |
void | Pop () |
void | Push (const T &iValue) |
void | Push (T &&iValue) |
uint64 | Size () const |
The need of a custom TQueue class rose from the fact that std:: classes cannot be exported easily accross dll boundaries when ULIS is compiled as a shared library.
Copy constructor, explicitly removed.
Move constructor. The first object is left in a valid but empty state. The second object steals the state.
|
inline |
Access component at back. The behaviour is undefined if the queue is empty.
|
inline |
Access const component at back. The behaviour is undefined if the queue is empty.
|
inline |
Clear the queue, deallocating everything.
Emplace, emplace a new element at end of the queue.
|
inline |
Access component at front. The behaviour is undefined if the queue is empty.
|
inline |
Access const component at front. The behaviour is undefined if the queue is empty.
|
inline |
Returns wether the queue is empty or not.
Copy Assignment Operator, explicitly removed.
Move Assignment Operator, explicitly removed.
|
inline |
Pop, pop the front element. The behaviour is undefined is the queue is empty.
|
inline |
Push, insert a new element at the end of the queue.
|
inline |
Push, insert a new element at the end of the queue.