21 uint8_t* _buffer =
nullptr;
33 explicit DynaBuffer(uint size,
bool zeroOut=
false);
45 void zeroFill(
int fromIndex = 0,
int toIndex = -1);
55 ulong
getElemPos(
int index) {
return _headerSize + (index * _elemSize); }
60 bool getElem(
int index, uint8_t& elemBuf);
61 bool setElem(
int index, uint8_t& elemBuf);
64 bool insertElems(
int index, uint8_t& elemBuf,
int count);
69 bool moveElem(
int index,
int destIndex);
70 bool moveElems(
int frIndex,
int toIndex,
int destIndex);
131 bool putString(
const char* value, uint maxCount = 0,
bool addTerm =
true);
132 bool putString(
const String& strValue, uint maxCount = 0,
bool addTerm =
true);
133 bool putBuffer(uint8_t* buf, uint offset, uint count);
bool isFull()
Definition: DynaBuffer.cpp:334
bool putByte(uint8_t value)
Definition: DynaBuffer.cpp:594
void _putByte(uint8_t value)
Definition: DynaBuffer.cpp:590
uint8_t * getInternalTypedArray()
Definition: DynaBuffer.h:39
uint16_t ushort
Definition: TypeDefs.h:23
UUID getNextUUID()
Definition: DynaBuffer.cpp:490
void invalidate()
Definition: DynaBuffer.cpp:324
double getNextDouble()
Definition: DynaBuffer.cpp:511
bool hasRemainingCapacity(uint count)
Definition: DynaBuffer.cpp:342
bool insertElem(int index, uint8_t &elemBuf)
Definition: DynaBuffer.cpp:189
bool putLongLong(long long value)
Definition: DynaBuffer.cpp:661
bool insertRegion(int index, int count)
Definition: DynaBuffer.cpp:93
bool putBuffer(uint8_t *buf, uint offset, uint count)
Definition: DynaBuffer.cpp:785
bool getElem(int index, uint8_t &elemBuf)
Definition: DynaBuffer.cpp:154
long getNextLong()
Definition: DynaBuffer.cpp:442
GeneratorWrapper< T > value(T &&value)
Definition: catch.hpp:4005
void reset()
Definition: DynaBuffer.cpp:64
bool putInt(int value)
Definition: DynaBuffer.cpp:625
bool getNextBuffer(byte *buf, uint offset, uint count)
Definition: DynaBuffer.cpp:561
bool putUInt64(uint64_t value)
Definition: DynaBuffer.cpp:683
DynaBuffer()
Definition: DynaBuffer.cpp:21
bool moveElems(int frIndex, int toIndex, int destIndex)
Definition: DynaBuffer.cpp:272
uint8_t * getInternalTypedArrayAtPos(ulong pos)
Definition: DynaBuffer.h:41
index_t getNextIndex()
Definition: DynaBuffer.cpp:481
void setIsDirty(bool isDirty)
Definition: DynaBuffer.cpp:72
bool moveElem(int index, int destIndex)
Definition: DynaBuffer.cpp:268
bool putULongLong(ulonglong value)
Definition: DynaBuffer.cpp:665
bool hasNextByte()
Definition: DynaBuffer.cpp:394
ulonglong getNextULongLong()
Definition: DynaBuffer.cpp:459
bool putULong(ulong value)
Definition: DynaBuffer.cpp:647
int64_t getNextInt64()
Definition: DynaBuffer.cpp:468
uint getBufEnd() const
Definition: DynaBuffer.cpp:366
uint8_t getNextByte()
Definition: DynaBuffer.cpp:398
void zeroFill(int fromIndex=0, int toIndex=-1)
Definition: DynaBuffer.cpp:50
int64_t index_t
Definition: ICacheConst.h:19
bool getHeader(uint8_t &headerBuf)
Definition: DynaBuffer.cpp:130
DynaBuffer * copy() override
Definition: DynaBuffer.cpp:46
uint8_t popLastByte()
Definition: DynaBuffer.cpp:407
uint getRemainingCapacity() const
Definition: DynaBuffer.cpp:346
bool putUUID(UUID *value)
Definition: DynaBuffer.cpp:711
virtual ~DynaBuffer()
Definition: DynaBuffer.cpp:33
void * getInternalRawArray()
Definition: DynaBuffer.h:40
long long getNextLongLong()
Definition: DynaBuffer.cpp:455
uint adjustPos(int delta)
Definition: DynaBuffer.cpp:88
bool putDouble(double value)
Definition: DynaBuffer.cpp:731
bool getNextElem(uint8_t &elemBuf)
Definition: DynaBuffer.cpp:178
bool putHeader(uint8_t &headerBuf)
Definition: DynaBuffer.cpp:142
long double getNextLongDouble()
Definition: DynaBuffer.cpp:520
bool deleteElem(int index)
Definition: DynaBuffer.cpp:241
uint getRemaining() const
Definition: DynaBuffer.cpp:354
void setBufEnd(uint count)
Definition: DynaBuffer.cpp:370
uint getElemCount()
Definition: DynaBuffer.cpp:126
bool putFloat(float value)
Definition: DynaBuffer.cpp:717
static bool THROW_EXCEPTIONS
Definition: DynaBuffer.h:30
bool deleteElems(int frIndex, int toIndex)
Definition: DynaBuffer.cpp:245
bool putUShort(ushort value)
Definition: DynaBuffer.cpp:611
uint getPos() const
Definition: DynaBuffer.cpp:76
float getNextFloat()
Definition: DynaBuffer.cpp:502
bool putLongDouble(long double value)
Definition: DynaBuffer.cpp:745
bool isEmpty()
Definition: DynaBuffer.cpp:330
bool removeElem(int index, uint8_t &elemBuf)
Definition: DynaBuffer.cpp:227
short getNextShort()
Definition: DynaBuffer.cpp:416
bool hasRemaining(uint count)
Definition: DynaBuffer.cpp:350
bool hasCapacity()
Definition: DynaBuffer.cpp:338
String getBufferAsString()
Definition: DynaBuffer.cpp:582
bool putUInt(uint value)
Definition: DynaBuffer.cpp:629
bool requiresRemaining(uint count)
Definition: DynaBuffer.cpp:358
bool getNextToken(String &str, char delim, uint maxCount=0)
Definition: DynaBuffer.cpp:570
void clear()
Definition: DynaBuffer.cpp:57
bool setPos(uint pos)
Definition: DynaBuffer.cpp:80
void setBufferSize(uint bufSize)
Definition: DynaBuffer.cpp:379
bool getNextString(char *buf, uint count, bool addTerm)
Definition: DynaBuffer.cpp:529
ushort getNextUShort()
Definition: DynaBuffer.cpp:420
bool putInt64(int64_t value)
Definition: DynaBuffer.cpp:679
bool isDirty()
Definition: DynaBuffer.cpp:68
uint getElemCapacity()
Definition: DynaBuffer.cpp:122
bool getNextLine(String &str)
Definition: DynaBuffer.cpp:557
void setElemMode(uint headerSize, uint elemSize)
Definition: DynaBuffer.cpp:117
bool appendElem(uint8_t &elemBuf)
Definition: DynaBuffer.cpp:214
uint getNextUInt()
Definition: DynaBuffer.cpp:433
bool putIndex(index_t value)
Definition: DynaBuffer.cpp:697
int getNextInt()
Definition: DynaBuffer.cpp:429
bool setElem(int index, uint8_t &elemBuf)
Definition: DynaBuffer.cpp:166
uint getBufferSize() const
Definition: DynaBuffer.cpp:375
bool putString(const char *value, uint maxCount=0, bool addTerm=true)
Definition: DynaBuffer.cpp:759
ulong getNextULong()
Definition: DynaBuffer.cpp:446
Definition: ICopyable.h:8
Definition: DynaBuffer.h:20
bool putShort(short value)
Definition: DynaBuffer.cpp:607
bool deleteRegion(int index, int count)
Definition: DynaBuffer.cpp:104
bool putLong(long value)
Definition: DynaBuffer.cpp:643
bool insertElems(int index, uint8_t &elemBuf, int count)
Definition: DynaBuffer.cpp:201
uint64_t getNextUInt64()
Definition: DynaBuffer.cpp:472
ulong getElemPos(int index)
Definition: DynaBuffer.h:55