Go to the documentation of this file.
18 #ifndef __LIB_LIBFS_IOBUFFER_H
19 #define __LIB_LIBFS_IOBUFFER_H
FileSystem::Result flushWrite()
Flush write buffers.
Memory::Range m_directMapRange
Contains the memory address range of the direct memory mapping.
Size getCount() const
Get byte count.
void addCount(const Size bytes)
Increment byte counter.
const FileSystemMessage * getMessage() const
Get filesystem message.
FileSystem::Result bufferedWrite(const void *buffer, const Size size)
Buffered write bytes to the I/O buffer.
bool m_directMapped
True if using directly memory-mapped memory (unbuffered)
virtual ~IOBuffer()
Destructor.
IOBuffer()
Default empty constructor.
void setMessage(const FileSystemMessage *msg)
Set filesystem message.
const FileSystemMessage * m_message
Current request being processed.
u8 * m_buffer
Buffer for storing temporary data.
Abstract Input/Output buffer.
unsigned int Size
Any sane size indicator cannot go negative.
u8 * getBuffer()
Get raw buffer.
Result
Result code for filesystem Actions.
unsigned char u8
Unsigned 8-bit number.
Size m_count
Bytes written to the buffer.
u8 operator[](Size index) const
Byte index operator.
FileSystem::Result bufferedRead()
Buffered read bytes from the I/O buffer.
FileSystem::Result read(void *buffer, const Size size, const Size offset=ZERO)
Read bytes from the I/O buffer.
FileSystem::Result write(const void *buffer, const Size size, const Size offset=ZERO)
Write bytes to the I/O buffer.