6 #ifndef _INC_cStreamQueue_H
7 #define _INC_cStreamQueue_H
46 return SUPER_t::WriteX(pData, nDataSize);
50 return SUPER_t::ReadX(pData, nDataSize);
54 return SUPER_t::ReadPeek((BYTE*)pData, (
ITERATE_t)nDataSize);
61 ITERATE_t iAutoReadCommit = this->get_AutoReadCommit();
62 this->put_AutoReadCommit((
ITERATE_t)nSizeMin);
63 return (
size_t)iAutoReadCommit;
67 return SUPER_t::SeekQ(offset, eSeekOrigin);
72 return this->get_WriteIndex();
86 :
cQueueRW<BYTE>(nullptr, 0, 0, 0, 0)
91 explicit cStreamStatic(
void* pData,
size_t iDataMax,
size_t iReadLast,
size_t iWriteLast,
size_t iAutoReadCommit = 0)
124 return SUPER_t::SeekQ(offset, eSeekOrigin);
129 return SUPER_t::get_WriteIndex();
134 return SUPER_t::WriteX(pData, nDataSize);
138 return SUPER_t::ReadX(pData, nDataSize);
142 return SUPER_t::ReadPeek((BYTE*)pData, (
ITERATE_t)nDataSize);
164 return (
StrLen_t)SUPER_t::get_WriteIndex();
170 m_szVal[nLen] =
'\0';
#define GRAYCORE_LINK
Definition: GrayCore.h:47
#define STRMAX(x)
Get Max size of static string space. minus the '\0' terminator character.
Definition: StrConst.h:33
#define UNREFERENCED_PARAMETER(P)
< _WIN32 type thing. get rid of stupid warning.
Definition: SysTypes.h:299
#define UNREFERENCED_REFERENCE(x)
Definition: SysTypes.h:318
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
Definition: cStreamQueue.h:19
virtual HRESULT ReadPeek(void *pData, size_t nDataSize) override
Definition: cStreamQueue.h:52
~cStreamQueue()
Definition: cStreamQueue.h:40
cStreamQueue(size_t nGrowSizeChunk=4 *1024, size_t nGrowSizeMax=cHeap::k_ALLOC_MAX) noexcept
Definition: cStreamQueue.h:35
virtual HRESULT WriteX(const void *pData, size_t nDataSize) override
Definition: cStreamQueue.h:44
virtual HRESULT ReadX(void *pData, size_t nDataSize) override
Definition: cStreamQueue.h:48
virtual STREAM_SEEKRET_t Seek(STREAM_OFFSET_t offset, SEEK_ORIGIN_TYPE eSeekOrigin=SEEK_Set) override
Disambiguate Seek for cStreamBase to cStreamInput for stupid compiler.
Definition: cStreamQueue.h:65
cStreamQueue(const cStreamQueue &a) noexcept
Definition: cStreamQueue.h:28
virtual size_t SetSeekSizeMin(size_t nSizeMin=k_FILE_BLOCK_SIZE) override
Definition: cStreamQueue.h:56
virtual STREAM_POS_t GetLength() const override
Definition: cStreamQueue.h:69
Definition: cStreamQueue.h:77
virtual HRESULT ReadX(void *pData, size_t nDataSize) override
Definition: cStreamQueue.h:136
virtual STREAM_POS_t GetLength() const override
Definition: cStreamQueue.h:126
virtual HRESULT ReadPeek(void *pData, size_t nDataSize) override
Definition: cStreamQueue.h:140
cStreamStatic(const cMemBlock &m)
Definition: cStreamQueue.h:102
virtual STREAM_SEEKRET_t Seek(STREAM_OFFSET_t offset, SEEK_ORIGIN_TYPE eSeekOrigin=SEEK_Set) override
Disambiguate Seek for cStreamBase to cStreamInput for stupid compiler.
Definition: cStreamQueue.h:122
cStreamStatic()
Definition: cStreamQueue.h:85
~cStreamStatic()
Definition: cStreamQueue.h:113
cStreamStatic(const void *pData, size_t iDataMax)
Definition: cStreamQueue.h:96
virtual HRESULT WriteX(const void *pData, size_t nDataSize) override
Definition: cStreamQueue.h:132
virtual size_t SetSeekSizeMin(size_t nSizeMin) override
Definition: cStreamQueue.h:117
cStreamStatic(const cStreamStatic &a)
Definition: cStreamQueue.h:108
cStreamStatic(void *pData, size_t iDataMax, size_t iReadLast, size_t iWriteLast, size_t iAutoReadCommit=0)
Definition: cStreamQueue.h:91
Definition: cStreamQueue.h:147
cStreamStringA()
Definition: cStreamQueue.h:156
StrLen_t get_StrLen() const
Definition: cStreamQueue.h:162
char * ref_StrA()
Definition: cStreamQueue.h:166
Definition: cStream.h:456
< The main namespace for all Core functions.
Definition: GrayCore.cpp:14
LONG_PTR STREAM_OFFSET_t
Might be 64 or 32 bit. TODO SET USE_FILE_POS64.
Definition: cOSHandle.h:52
int StrLen_t
the length of a string in chars (bytes for UTF8, wchar_t for UNICODE). or offset in characters....
Definition: StrConst.h:32
LONG_PTR STREAM_SEEKRET_t
return from Seek()
Definition: cOSHandle.h:53
int ITERATE_t
like size_t but signed
Definition: Index.h:28
ULONG_PTR STREAM_POS_t
NOT same as FILE_SIZE_t in 32 bit. Why not ?
Definition: cOSHandle.h:54
SEEK_ORIGIN_TYPE
Definition: cOSHandle.h:34
@ SEEK_Set
SEEK_SET = FILE_BEGIN = STREAM_SEEK_SET = 0 = relative to the start of the file.
Definition: cOSHandle.h:39
static const StrLen_t k_LEN_MAX
arbitrary max size for Format() etc. NOTE: _MSC_VER says stack frame should be at least 16384
Definition: StrT.h:75
static const size_t k_ALLOC_MAX
256 * 64K = (arbitrary) largest reasonable single malloc.
Definition: cHeap.h:45