![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cQueue.h>
Public Member Functions | |
cQueueStatic () noexcept | |
bool | isFullQ () const noexcept |
void | EmptyQ () noexcept |
ITERATE_t | get_ReadQtyT () const noexcept |
ITERATE_t | get_ReadQtyC () const noexcept |
const TYPE * | get_ReadPtr () const |
void | AdvanceRead (ITERATE_t iCount=1) |
ITERATE_t | get_WriteQtyT () const noexcept |
TYPE | Read1 () |
ITERATE_t | ReadQty (TYPE *pBuf, ITERATE_t nCountMax) |
ITERATE_t | ReadQtySafe (TYPE *pBuf, ITERATE_t nCountMax) |
bool | WriteQ (TYPE val) |
HRESULT | WriteQty (const TYPE *pVal, ITERATE_t iLength) |
HRESULT | WriteQtySafe (const TYPE *pVal, ITERATE_t iLength) |
![]() | |
cQueueBase (ITERATE_t iReadLast=0, ITERATE_t iWriteLast=0) noexcept | |
void | InitQ (ITERATE_t iReadLast=0, ITERATE_t iWriteLast=0) noexcept |
bool | isEmptyQ () const noexcept |
void | EmptyQ () noexcept |
ITERATE_t | get_ReadIndex () const noexcept |
ITERATE_t | get_WriteIndex () const noexcept |
ITERATE_t | get_ReadQty () const |
void | AdvanceRead (ITERATE_t iCount=1) |
STREAM_SEEKRET_t | SeekQ (STREAM_OFFSET_t iOffset, SEEK_ORIGIN_TYPE eSeekOrigin=SEEK_Set) |
Public Attributes | |
TYPE | m_Data [_QTY] |
Protected Member Functions | |
ITERATE_t | GetWrapIndex (ITERATE_t i) const noexcept |
Additional Inherited Members | |
![]() | |
ITERATE_t | m_iReadLast |
old items removed/read from here. More... | |
ITERATE_t | m_iWriteLast |
new items added/written here. end of read. More... | |
Create a generic thread/multi process safe (static sized) wrapping queue. similar to std::istringstream except NOT on Heap. static allocations.
|
inlinenoexcept |
|
inline |
|
inlinenoexcept |
thread safe. single instruction operations cannot be time sliced.
|
inline |
use get_ReadQtyC() to get the allowed size.
|
inlinenoexcept |
Max we can get in a single CONTIGUOUS block peek/read. For use with get_ReadPtr().
|
inlinenoexcept |
How much Total data is in the Queue ? may be wrapped. Thread safe.
|
inlinenoexcept |
total available space to write - not contiguous
|
inlineprotectednoexcept |
|
inlinenoexcept |
|
inline |
Read a single TYPE element. Thread safe against Write.
|
inline |
copy TYPE data out. NOT thread safe.
|
inline |
copy TYPE data out. Thread Safe against write.
|
inline |
Add a single TYPE element. Thread Safe against Read.
|
inline |
Add several TYPE items to the Q using CopyElements. NOT thread safe.
|
inline |
Thread Safe against Read.
TYPE Gray::cQueueStatic< TYPE, _QTY >::m_Data[_QTY] |