22 #ifndef OR_INTERNALS_RAWCONTAINER_H_ 23 #define OR_INTERNALS_RAWCONTAINER_H_ 27 #include <sys/types.h> 29 #include "io/stream.hpp" 52 RawContainer(
const IO::Stream::Ptr &_file, off_t offset);
56 const IO::Stream::Ptr &file() {
return m_file; }
57 EndianType endian()
const {
return m_endian; }
58 off_t offset()
const {
return m_offset; }
60 bool readInt8(
const IO::Stream::Ptr &f, int8_t &v);
61 bool readUInt8(
const IO::Stream::Ptr &f, uint8_t &v);
63 bool readInt16(
const IO::Stream::Ptr &f, int16_t &v);
65 bool readInt32(
const IO::Stream::Ptr &f, int32_t &v);
67 bool readUInt16(
const IO::Stream::Ptr &f, uint16_t &v);
69 bool readUInt32(
const IO::Stream::Ptr &f, uint32_t &v);
77 size_t fetchData(
void *buf, off_t offset,
size_t buf_size);
83 void setEndian(EndianType _endian) { m_endian = _endian; }
size_t fetchData(void *buf, off_t offset, size_t buf_size)
CIFF is the container for CRW files. It is an attempt from Canon to make this a standard. I guess it failed.
bool readUInt32(const IO::Stream::Ptr &f, uint32_t &v)
RawContainer(const IO::Stream::Ptr &_file, off_t offset)
bool readUInt16(const IO::Stream::Ptr &f, uint16_t &v)
bool readInt32(const IO::Stream::Ptr &f, int32_t &v)
bool readInt16(const IO::Stream::Ptr &f, int16_t &v)