libopenraw
OpenRaw::Internals::MRWContainer Class Reference

#include <mrwcontainer.hpp>

Inheritance diagram for OpenRaw::Internals::MRWContainer:
OpenRaw::Internals::IfdFileContainer OpenRaw::Internals::RawContainer

Public Member Functions

 MRWContainer (const IO::Stream::Ptr &file, off_t offset=0)
virtual ~MRWContainer ()
 MRWContainer (const MRWContainer &)=delete
MRWContaineroperator= (const MRWContainer &)=delete
virtual IfdFileContainer::EndianType isMagicHeader (const char *p, int len) override
off_t pixelDataOffset ()
Public Member Functions inherited from OpenRaw::Internals::IfdFileContainer
 IfdFileContainer (const IO::Stream::Ptr &file, off_t offset)
virtual ~IfdFileContainer ()
IfdDir::Ref setDirectory (int dir)
int countDirectories (void)
std::vector< IfdDir::Ref > & directories ()
int currentDirectory ()
size_t getDirectoryDataSize ()
int lastError () const
int exifOffsetCorrection () const
void setExifOffsetCorrection (int corr)
::or_error locateImageData (const IfdDir::Ref &dir, uint32_t &x, uint32_t &y, ::or_data_type &t)
Public Member Functions inherited from OpenRaw::Internals::RawContainer
 RawContainer (const IO::Stream::Ptr &_file, off_t offset)
virtual ~RawContainer ()
const IO::Stream::Ptr & file ()
EndianType endian () const
off_t offset () const
bool skip (off_t offset)
Option< int8_t > readInt8 (const IO::Stream::Ptr &f)
Option< uint8_t > readUInt8 (const IO::Stream::Ptr &f)
Option< int16_t > readInt16 (const IO::Stream::Ptr &f)
Option< int32_t > readInt32 (const IO::Stream::Ptr &f)
Option< uint16_t > readUInt16 (const IO::Stream::Ptr &f)
size_t readUInt16Array (const IO::Stream::Ptr &f, std::vector< uint16_t > &v, size_t count)
Option< uint32_t > readUInt32 (const IO::Stream::Ptr &f)
size_t fetchData (void *buf, off_t offset, size_t buf_size)
off_t size () const

Public Attributes

MRW::DataBlock::Ref mrm
MRW::DataBlock::Ref prd
MRW::DataBlock::Ref ttw
MRW::DataBlock::Ref wbg
MRW::DataBlock::Ref rif

Protected Member Functions

virtual bool locateDirsPreHook () override
Protected Member Functions inherited from OpenRaw::Internals::RawContainer
 RawContainer (const RawContainer &)=delete
RawContaineroperator= (const RawContainer &)=delete
void setEndian (EndianType _endian)

Additional Inherited Members

Public Types inherited from OpenRaw::Internals::IfdFileContainer
enum  { IFD_NONE = -1 , IFD_EXIF = -2 , IFD_GPS = -3 , IFD_INTEROP = -4 }
Public Types inherited from OpenRaw::Internals::RawContainer
enum  EndianType { ENDIAN_NULL = 0 , ENDIAN_BIG , ENDIAN_LITTLE }
Protected Attributes inherited from OpenRaw::Internals::RawContainer
IO::Stream::Ptr m_file
off_t m_offset
EndianType m_endian

Detailed Description

A container for a Minolta Raw object.

Definition at line 217 of file mrwcontainer.hpp.

Constructor & Destructor Documentation

◆ MRWContainer()

OpenRaw::Internals::MRWContainer::MRWContainer ( const IO::Stream::Ptr & file,
off_t offset = 0 )

Definition at line 99 of file mrwcontainer.cpp.

◆ ~MRWContainer()

OpenRaw::Internals::MRWContainer::~MRWContainer ( )
virtual

destructor

Definition at line 104 of file mrwcontainer.cpp.

Member Function Documentation

◆ isMagicHeader()

IfdFileContainer::EndianType OpenRaw::Internals::MRWContainer::isMagicHeader ( const char * p,
int len )
overridevirtual

Check the MRW magic header.

Reimplemented from OpenRaw::Internals::IfdFileContainer.

Definition at line 108 of file mrwcontainer.cpp.

References OpenRaw::Internals::RawContainer::ENDIAN_BIG.

◆ locateDirsPreHook()

bool OpenRaw::Internals::MRWContainer::locateDirsPreHook ( )
overrideprotectedvirtual

◆ pixelDataOffset()

off_t OpenRaw::Internals::MRWContainer::pixelDataOffset ( )
inline

Return offset of pixel array data from start of file.

Definition at line 241 of file mrwcontainer.hpp.

Referenced by OpenRaw::Internals::MRWFile::_getRawData(), and locateDirsPreHook().

Member Data Documentation

◆ mrm

MRW::DataBlock::Ref OpenRaw::Internals::MRWContainer::mrm

Definition at line 233 of file mrwcontainer.hpp.

◆ prd

MRW::DataBlock::Ref OpenRaw::Internals::MRWContainer::prd

Definition at line 234 of file mrwcontainer.hpp.

◆ rif

MRW::DataBlock::Ref OpenRaw::Internals::MRWContainer::rif

Definition at line 237 of file mrwcontainer.hpp.

◆ ttw

MRW::DataBlock::Ref OpenRaw::Internals::MRWContainer::ttw

Definition at line 235 of file mrwcontainer.hpp.

◆ wbg

MRW::DataBlock::Ref OpenRaw::Internals::MRWContainer::wbg

Definition at line 236 of file mrwcontainer.hpp.


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