22#ifndef OR_INTERNALS_IO_STREAM_H_
23#define OR_INTERNALS_IO_STREAM_H_
32#include <libopenraw/consts.h>
44 typedef std::shared_ptr<Stream> Ptr;
48 Stream(
const char *filename);
62 virtual int seek(off_t offset,
int whence) = 0;
64 virtual int read(
void *buf,
size_t count) = 0;
65 virtual off_t filesize() = 0;
80 uint8_t readByte() noexcept(false);
82 void set_error(
Error error)
94 std::string m_fileName;
Stream(const char *filename)
virtual int read(void *buf, size_t count)=0
const std::string & get_path() const
virtual int seek(off_t offset, int whence)=0
CIFF is the container for CRW files. It is an attempt from Canon to make this a standard....