8#ifndef MFRAME_C76BAF3F_EE1F_46A3_A050_9CD1057055E5
9#define MFRAME_C76BAF3F_EE1F_46A3_A050_9CD1057055E5
18#include "./../io/Buffer.h"
19#include "./../lang/Memory.h"
20#include "./../lang/Strings.h"
168 return static_cast<uint32
>(this->
position());
178 return static_cast<uint32
>(this->
position());
187 uint32 result =
static_cast<uint32
>(this->
position());
198 uint32 result =
static_cast<uint32
>(this->
position());
222 return (this->vLimit - this->vPosition);
229 virtual int poll(
void* pointer,
int length)
override;
231 virtual int skip(
int length)
override;
233 virtual void lock(
bool enable)
override;
241 virtual int putByte(
const char result)
override;
245 virtual int put(
const void* buffer,
int bufferSize)
override;
266 return this->vMemory.
length();
275 return this->vPosition;
294 this->vMark = vPosition;
317 return this->
pollByte(
reinterpret_cast<char&
>(result));
328 return this->
pollShort(
reinterpret_cast<short&
>(result));
339 return this->
pollInt(
reinterpret_cast<int&
>(result));
348 return this->vMemory;
389 bool put(
const char*
string);
Definition ByteBuffer.h:35
ByteBuffer & operator<<(short s)
Definition ByteBuffer.h:94
bool put(const mframe::lang::Strings &string)
virtual int avariable(void) const override
取得輸出緩存內剩餘多少位元組
Definition ByteBuffer.h:221
uint32 operator--(void)
Definition ByteBuffer.h:176
uint32 operator--(int)
Definition ByteBuffer.h:197
ByteBuffer & operator<<(mframe::lang::Strings &string)
Definition ByteBuffer.h:127
int capacity(void) const
Definition ByteBuffer.h:265
ByteBuffer & rewind(void)
Definition ByteBuffer.h:303
bool putInt(const int value)
ByteBuffer & operator<<(int v)
Definition ByteBuffer.h:105
mframe::lang::Memory & memory(void)
Definition ByteBuffer.h:347
virtual int put(mframe::lang::Readable &readBuffer) override
將readable內資料輸入至緩衝區。
int limit(void) const
Definition ByteBuffer.h:256
bool putFloat(const float value)
ByteBuffer(int length)
Construct a new Byte Buffer object.
int putFormat(const char *format,...)
virtual int poll(mframe::lang::Appendable &appendable) override
檢索至Appendable指定數量字節,並由此緩衝區刪除
bool pollInt(uint32 &result)
Get the Int object.
Definition ByteBuffer.h:338
bool position(int newPosition)
bool putShort(const short value)
int position(void) const
Definition ByteBuffer.h:274
void operator-=(int shift)
Definition ByteBuffer.h:157
uint32 operator++(void)
Definition ByteBuffer.h:166
bool pollByte(uint8 &result)
Get the Byte object.
Definition ByteBuffer.h:316
bool pollFloat(float &result)
Get the Float object.
virtual void lock(bool enable) override
鎖定緩存,取出不移除。
bool pollInt(int &result)
Get the Int object.
ByteBuffer & mark(void)
Definition ByteBuffer.h:293
int putFormat(const char *format, va_list args)
virtual int pollByte(char &result) override
檢索一個字節,並由此緩衝區刪除
virtual int putByte(const char result) override
將字節輸入至緩衝區。
virtual void flush(void) override
void operator+=(int shift)
Definition ByteBuffer.h:148
ByteBuffer & operator<<(char c)
Definition ByteBuffer.h:83
ByteBuffer(const mframe::lang::Memory &memory)
Construct a new Byte Buffer object.
virtual ~ByteBuffer(void) override
Destroy the Byte Buffer object.
bool put(const char *string)
virtual int remaining(void) const override
取得緩衝區剩餘空閒字節數。
virtual int put(const void *buffer, int bufferSize) override
將指針內資料輸入至緩衝區。
uint32 operator++(int)
Definition ByteBuffer.h:186
ByteBuffer & reset(void)
Definition ByteBuffer.h:283
ByteBuffer & operator<<(const char *string)
Definition ByteBuffer.h:116
bool pollShort(uint16 &result)
Get the Short object.
Definition ByteBuffer.h:327
int operator=(int v)
Definition ByteBuffer.h:138
virtual int poll(void *pointer, int length) override
檢索至pointer指定數量字節,並由此緩衝區刪除
bool pollShort(short &result)
Get the Short object.
virtual int skip(int length) override
跳躍指定的字結數量,並由此緩衝區刪除。
int length(void) const
Definition Data.h:126
Definition AppendableOutputStream.h:24
可附加的 <Interface>
Definition Appendable.h:36