LMTQueue< T, N > Class Template Reference
A size-limited multiple-producer, multiple-consumer, thread-safe queue implemented using SystemC primitives The LMTQueue is used as the input buffer in the NPU modules. More...
#include <LMTQueue.h>
Collaboration diagram for LMTQueue< T, N >:
Public Member Functions | |
LMTQueue () | |
Construct a LMTQueue. | |
T | pop () |
Pop the top element from the LMTQueue and return a copy. More... | |
void | pop (T &item) |
Pop the top element from the LMTQueue and copy it into the output argument. More... | |
void | push (const T &item) |
Push an item onto the LMTQueue. More... | |
void | push (T &&item) |
Push an item onto the LMTQueue (explicit move) More... | |
size_t | available () const |
bool | full () const |
bool | empty () const |
Detailed Description
template<typename T, size_t N>
class LMTQueue< T, N >
A size-limited multiple-producer, multiple-consumer, thread-safe queue implemented using SystemC primitives The LMTQueue is used as the input buffer in the NPU modules.
Member Function Documentation
template<typename T , size_t N>
|
inline |
Pop the top element from the LMTQueue and return a copy.
- Returns
- Copy of the top element
template<typename T , size_t N>
|
inline |
Pop the top element from the LMTQueue and copy it into the output argument.
- Parameters
-
Output argument
template<typename T , size_t N>
|
inline |
Push an item onto the LMTQueue.
- Parameters
-
Item to push
template<typename T , size_t N>
|
inline |
Push an item onto the LMTQueue (explicit move)
- Parameters
-
Item to move
The documentation for this class was generated from the following file:
- /home/lemniscate/workspace/PFPSim/pfpsim/core/LMTQueue.h