Isle
|
Implementation of LegoStorage for memory-backed buffers. More...
#include <legostorage.h>
Public Member Functions | |
LegoMemory (void *p_buffer) | |
Constructor setting internal buffer pointer and resets position. More... | |
LegoResult | Read (void *p_buffer, LegoU32 p_size) override |
Reads bytes from memory buffer at current position. More... | |
LegoResult | Write (const void *p_buffer, LegoU32 p_size) override |
Writes bytes to memory buffer at current position. More... | |
LegoResult | GetPosition (LegoU32 &p_position) override |
Gets the current offset into the memory buffer. More... | |
LegoResult | SetPosition (LegoU32 p_position) override |
Sets the current offset into the memory buffer. More... | |
![]() | |
LegoStorage () | |
Default constructor initializing mode to zero. More... | |
virtual | ~LegoStorage () |
Virtual destructor for safe polymorphic destruction. More... | |
virtual LegoResult | Read (void *p_buffer, LegoU32 p_size)=0 |
Read bytes from storage into buffer. More... | |
virtual LegoResult | Write (const void *p_buffer, LegoU32 p_size)=0 |
Write bytes from buffer into storage. More... | |
virtual LegoResult | GetPosition (LegoU32 &p_position)=0 |
Get current read/write position in stream. More... | |
virtual LegoResult | SetPosition (LegoU32 p_position)=0 |
Set current read/write position in stream. More... | |
virtual LegoBool | IsWriteMode () |
Returns TRUE if object was opened in write mode. More... | |
virtual LegoBool | IsReadMode () |
Returns TRUE if object was opened in read mode. More... | |
LegoStorage * | WriteString (const char *p_data) |
Writes a length-prefixed string to storage. More... | |
LegoStorage * | WriteU8 (LegoU8 p_data) |
Writes an 8-bit unsigned value to storage. More... | |
LegoStorage * | WriteS16 (LegoS16 p_data) |
Writes a 16-bit signed value to storage. More... | |
LegoStorage * | WriteU16 (LegoU16 p_data) |
Writes a 16-bit unsigned value to storage. More... | |
LegoStorage * | WriteS32 (MxS32 p_data) |
Writes a 32-bit signed value to storage. More... | |
LegoStorage * | WriteU32 (MxU32 p_data) |
Writes a 32-bit unsigned value to storage. More... | |
LegoStorage * | WriteFloat (LegoFloat p_data) |
Writes a floating-point (single-precision) value to storage. More... | |
LegoStorage * | WriteVector (Mx3DPointFloat p_data) |
Writes a 3D vector (three floats) to storage. More... | |
LegoStorage * | WriteMxString (MxString p_data) |
Writes a length-prefixed MxString to storage. More... | |
LegoStorage * | ReadString (char *p_data) |
Reads a length-prefixed string from storage. More... | |
LegoStorage * | ReadU8 (LegoU8 &p_data) |
Reads an 8-bit unsigned value from storage. More... | |
LegoStorage * | ReadS16 (LegoS16 &p_data) |
Reads a 16-bit signed value from storage. More... | |
LegoStorage * | ReadU16 (LegoU16 &p_data) |
Reads a 16-bit unsigned value from storage. More... | |
LegoStorage * | ReadS32 (MxS32 &p_data) |
Reads a 32-bit signed value from storage. More... | |
LegoStorage * | ReadU32 (MxU32 &p_data) |
Reads a 32-bit unsigned value from storage. More... | |
LegoStorage * | ReadFloat (LegoFloat &p_data) |
Reads a floating-point (single-precision) value from storage. More... | |
LegoStorage * | ReadVector (Mx3DPointFloat &p_data) |
Reads a 3D vector (three floats) from storage. More... | |
LegoStorage * | ReadMxString (MxString &p_data) |
Reads a length-prefixed string and stores it in an MxString object. More... | |
Protected Attributes | |
LegoU8 * | m_buffer |
Pointer to target memory buffer for reading/writing. More... | |
LegoU32 | m_position |
Current read/write offset in buffer. More... | |
![]() | |
LegoU8 | m_mode |
File open/access mode. More... | |
Additional Inherited Members | |
![]() | |
enum | OpenFlags { c_read = 1 , c_write = 2 , c_text = 4 } |
File open mode flags for storage operations. More... | |
Implementation of LegoStorage for memory-backed buffers.
[AI]
Provides read/write operations on a raw memory buffer, keeping track of the current offset. [AI]
Definition at line 317 of file legostorage.h.
LegoMemory::LegoMemory | ( | void * | p_buffer | ) |
Constructor setting internal buffer pointer and resets position.
[AI]
p_buffer | Pointer to memory buffer for storage [AI] |
Definition at line 13 of file legostorage.cpp.
|
inlineoverridevirtual |
Gets the current offset into the memory buffer.
[AI]
p_position | Reference to store position [AI] |
Implements LegoStorage.
Definition at line 346 of file legostorage.h.
|
overridevirtual |
Reads bytes from memory buffer at current position.
[AI]
p_buffer | Output buffer to receive bytes [AI] |
p_size | Number of bytes to read [AI] |
Implements LegoStorage.
Definition at line 20 of file legostorage.cpp.
|
inlineoverridevirtual |
Sets the current offset into the memory buffer.
[AI]
p_position | New position [AI] |
Implements LegoStorage.
Definition at line 357 of file legostorage.h.
|
overridevirtual |
Writes bytes to memory buffer at current position.
[AI]
p_buffer | Input buffer containing bytes to write [AI] |
p_size | Number of bytes to write [AI] |
Implements LegoStorage.
Definition at line 28 of file legostorage.cpp.
|
protected |
Pointer to target memory buffer for reading/writing.
[AI]
Definition at line 373 of file legostorage.h.
|
protected |