46 virtual size_t get_size()
const {
return size_t(SIZE_MAX); }
53 virtual size_t send(
const void *data,
size_t len,
bool send_all =
true) = 0;
56 virtual size_t receive(
void *data,
size_t len,
bool receive_all =
true) = 0;
59 virtual size_t peek(
void *data,
size_t len) = 0;
virtual size_t get_position() const
Returns the position in the data stream.
Definition: iodevice_provider.h:50
virtual ~IODeviceProvider()
Definition: iodevice_provider.h:42
I/O device provider interface.
Definition: iodevice_provider.h:39
virtual bool seek(int, IODevice::SeekMode)
Seek in data stream.
Definition: iodevice_provider.h:65
virtual size_t get_size() const
Returns the size of data stream.
Definition: iodevice_provider.h:46
virtual size_t receive(void *data, size_t len, bool receive_all=true)=0
Receive data from device.
virtual size_t send(const void *data, size_t len, bool send_all=true)=0
Send data to device.
SeekMode
Seeking modes.
Definition: iodevice.h:53
virtual IODeviceProvider * duplicate()=0
Returns a new provider to the same resource.
virtual size_t peek(void *data, size_t len)=0
Peek data from device.