|
| cQueueDyn (ITERATE_t nGrowSizeChunk=128, ITERATE_t nGrowSizeMax=(cHeap::k_ALLOC_MAX/sizeof(TYPE))) noexcept |
|
| ~cQueueDyn () |
|
void | put_GrowSizeChunk (ITERATE_t nGrowSizeChunk) noexcept |
|
ITERATE_t | get_GrowSizeChunk () const noexcept |
|
bool | MakeWritePrepared (ITERATE_t iDesiredCount=1) |
|
TYPE * | GetWritePrepared (ITERATE_t iDesiredCount=1) |
|
bool | WriteQ (TYPE val) |
|
HRESULT | WriteQty (const TYPE *pVal, ITERATE_t iCount) |
|
void | WriteQ (cQueueRead< BYTE > &queue) |
|
HRESULT | WriteX (const void *pData, size_t nDataSize) |
|
| cQueueRW () noexcept |
|
| cQueueRW (BYTE *pData, ITERATE_t iDataAlloc, ITERATE_t iReadLast, ITERATE_t iWriteLast, ITERATE_t iAutoReadCommit=0) |
|
| cQueueRW (const BYTE *pData, ITERATE_t iDataMax) |
|
| ~cQueueRW () |
|
void | ReadCommitCheck () |
|
ITERATE_t | get_AutoReadCommit () const |
|
void | put_AutoReadCommit (ITERATE_t iAutoReadCommit=8 *1024) |
|
void | put_ReadIndex (ITERATE_t iReadLo) |
|
STREAM_SEEKRET_t | SeekQ (STREAM_OFFSET_t iOffset, SEEK_ORIGIN_TYPE eSeekOrigin=SEEK_Set) |
|
HRESULT | ReadQty (BYTE *pData, ITERATE_t iDataMaxQty) |
|
HRESULT | ReadX (void *pData, size_t nDataSize) |
|
bool | isFullQ () const |
|
ITERATE_t | get_WriteQty () const |
|
BYTE * | get_WritePtr () const |
|
HRESULT | WriteQty (const BYTE *pData, ITERATE_t iQtyMax) |
|
HRESULT | WriteX (const void *pData, size_t nDataSize) |
|
void | AdvanceWrite (ITERATE_t iCount=1) |
|
| cQueueRead (const TYPE *pData=nullptr, ITERATE_t iReadLast=0, ITERATE_t iWriteLast=0) noexcept |
|
| ~cQueueRead () |
|
const TYPE * | get_ReadPtr () const |
|
void | SetQueueRead (const TYPE *pData, ITERATE_t iReadLast=0, ITERATE_t iWriteLast=0) |
|
TYPE | Read1 (void) |
|
HRESULT | ReadPeek (TYPE *pData, ITERATE_t iDataMaxQty) |
|
HRESULT | ReadQty (TYPE *pData, ITERATE_t iDataMaxQty) |
|
void | ReadCommitNow () |
|
| 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) |
|
template<class TYPE = BYTE>
class Gray::cQueueDyn< TYPE >
Create a generic (dynamic sized) contiguous queue. Does NOT wrap! just grows as more is written.
- Note
- Needs to EmptyQ() or AutoReadCommit() periodically so it doesn't grow > nGrowSizeMax and FAIL! free on destruct.