clan::MemoryDevice Class Reference

Memory I/O device. More...

#include <memory_device.h>

+ Inheritance diagram for clan::MemoryDevice:

Public Member Functions

 MemoryDevice ()
 Constructs a memory I/O device. More...
 
 MemoryDevice (DataBuffer &data)
 Constructs a IODevice Memory. More...
 
const DataBufferget_data () const
 Retrieves the data buffer for the memory device. More...
 
DataBufferget_data ()
 Get Data. More...
 
- Public Member Functions inherited from clan::IODevice
 IODevice ()
 Constructs a null instance. More...
 
 IODevice (IODeviceProvider *provider)
 Constructs a IODevice. More...
 
 ~IODevice ()
 
IODevice duplicate ()
 Create a new IODevice referencing the same resource. More...
 
int get_position () const
 Returns the position in the data stream. More...
 
const IODeviceProviderget_provider () const
 Returns the provider for this object. More...
 
IODeviceProviderget_provider ()
 Returns the provider for this object. More...
 
int get_size () const
 Returns the size of data stream. More...
 
bool is_little_endian () const
 Returns true if the input source is in little endian mode. More...
 
bool is_null () const
 Returns true if this object is invalid. More...
 
int peek (void *data, int len)
 Peek data from device (data is left in the buffer). More...
 
int read (void *data, int len, bool receive_all=true)
 Alias for receive(data, len, receive_all) More...
 
float read_float ()
 Reads a float from input source. More...
 
int16_t read_int16 ()
 Reads a signed 16 bit integer from input source. More...
 
int32_t read_int32 ()
 Reads a signed 32 bit integer from input source. More...
 
int64_t read_int64 ()
 Reads a signed 64 bit integer from input source. More...
 
int8_t read_int8 ()
 Reads a signed 8 bit integer from input source. More...
 
std::string read_string_a ()
 Reads a string from the input source. More...
 
std::string read_string_nul ()
 Reads a nul terminated string from the input source. More...
 
std::string read_string_text (const char *skip_initial_chars, const char *read_until_chars, bool allow_eof=true)
 Reads a string from the input source where the source is a text file. More...
 
uint16_t read_uint16 ()
 Reads an unsigned 16 bit integer from input source. More...
 
uint32_t read_uint32 ()
 Reads an unsigned 32 bit integer from input source. More...
 
uint64_t read_uint64 ()
 Reads an unsigned 64 bit integer from input source. More...
 
uint8_t read_uint8 ()
 Reads an unsigned 8 bit integer from input source. More...
 
int receive (void *data, int len, bool receive_all=true)
 Receive data from device. More...
 
bool seek (int position, SeekMode mode=seek_set)
 Seek in data stream. More...
 
int send (const void *data, int len, bool send_all=true)
 Send data to device. More...
 
void set_big_endian_mode ()
 Changes input data endianess to big endian mode. (Default is little endian) More...
 
void set_little_endian_mode ()
 Changes input data endianess to little endian mode. This is the default setting. More...
 
void set_system_mode ()
 Changes input data endianess to the local systems mode. More...
 
void throw_if_null () const
 Throw an exception if this object is invalid. More...
 
int write (const void *data, int len, bool send_all=true)
 Alias for send(data, len, send_all) More...
 
void write_float (float data)
 Writes a float to output source. More...
 
void write_int16 (int16_t data)
 Writes a signed 16 bit integer to output source. More...
 
void write_int32 (int32_t data)
 Writes a signed 32 bit integer to output source. More...
 
void write_int64 (int64_t data)
 Writes a signed 64 bit integer to output source. More...
 
void write_int8 (int8_t data)
 Writes a signed 8 bit integer to output source. More...
 
void write_string_a (const std::string &str)
 Writes a string to the output source. More...
 
void write_string_nul (const std::string &str)
 Writes a nul terminated string to the output source. More...
 
void write_string_text (const std::string &str)
 Writes a text string to the output source. More...
 
void write_uint16 (uint16_t data)
 Writes an unsigned 16 bit integer to output source. More...
 
void write_uint32 (uint32_t data)
 Writes an unsigned 32 bit integer to output source. More...
 
void write_uint64 (uint64_t data)
 Writes an unsigned 64 bit integer to output source. More...
 
void write_uint8 (uint8_t data)
 Writes an unsigned 8 bit integer to output source. More...
 

Additional Inherited Members

- Public Types inherited from clan::IODevice
enum  SeekMode { seek_set, seek_cur, seek_end }
 Seeking modes. More...
 
- Protected Attributes inherited from clan::IODevice
std::shared_ptr< IODevice_Impl > impl
 

Detailed Description

Memory I/O device.

Constructor & Destructor Documentation

clan::MemoryDevice::MemoryDevice ( )

Constructs a memory I/O device.

clan::MemoryDevice::MemoryDevice ( DataBuffer data)

Constructs a IODevice Memory.

Parameters
data= Data Buffer

Member Function Documentation

const DataBuffer& clan::MemoryDevice::get_data ( ) const

Retrieves the data buffer for the memory device.

DataBuffer& clan::MemoryDevice::get_data ( )

Get Data.

Returns
data

The documentation for this class was generated from the following file: