libopenraw
|
generic IFD based raw file. More...
#include <ifdfile.h>
Protected Types | |
typedef std::map< uint32_t, IFDThumbDesc > | ThumbLocations |
Protected Member Functions | |
IFDFile (IO::Stream *s, Type _type, bool instantiateContainer=true) | |
virtual ::or_error | _enumThumbnailSizes (std::vector< uint32_t > &list) |
virtual ::or_error | _locateThumbnail (const IFDDir::Ref &dir, std::vector< uint32_t > &list) |
::or_error | _getRawDataFromDir (RawData &data, IFDDir::Ref &dir) |
virtual IFDDir::Ref | _locateCfaIfd ()=0 |
virtual IFDDir::Ref | _locateMainIfd ()=0 |
virtual IFDDir::Ref | _locateExifIfd () |
virtual void | _identifyId () |
virtual MetaValue * | _getMetaValue (int32_t meta_index) |
Protected Attributes | |
ThumbLocations | m_thumbLocations |
IO::Stream * | m_io |
IFDFileContainer * | m_container |
IFDDir::Ref | m_cfaIfd |
IFDDir::Ref | m_mainIfd |
IFDDir::Ref | m_exifIfd |
or_error OpenRaw::Internals::IFDFile::_enumThumbnailSizes | ( | std::vector< uint32_t > & | list | ) | [protected, virtual] |
list the thumbnails in the IFD
list | the list of thumbnails |
Implements OpenRaw::RawFile.
Reimplemented in OpenRaw::Internals::MRWFile.
Definition at line 95 of file ifdfile.cpp.
References _locateThumbnail(), OpenRaw::Internals::IFDFileContainer::directories(), and m_container.
or_error OpenRaw::Internals::IFDFile::_getRawDataFromDir | ( | RawData & | data, |
IFDDir::Ref & | dir | ||
) | [protected] |
load the compressed rawdata from a standard location in an IFD
data | the data storage |
dir | the IFD |
Definition at line 471 of file ifdfile.cpp.
References OpenRaw::Internals::RawContainer::fetchData(), OpenRaw::Internals::NEFFile::isCompressed(), m_container, m_exifIfd, OpenRaw::BitmapData::setDataType(), OpenRaw::RawData::setDimensions(), and OpenRaw::Internals::Unpack::unpack_be12to16().
Referenced by OpenRaw::Internals::PEFFile::_getRawData(), OpenRaw::Internals::ORFFile::_getRawData(), OpenRaw::Internals::ERFFile::_getRawData(), and OpenRaw::Internals::DNGFile::_getRawData().
or_error OpenRaw::Internals::IFDFile::_locateThumbnail | ( | const IFDDir::Ref & | dir, |
std::vector< uint32_t > & | list | ||
) | [protected] |
locate the thumnail in the IFD
dir | the IFDDir where to locate the thumbnail |
Definition at line 137 of file ifdfile.cpp.
References m_cfaIfd, and m_io.
Referenced by _enumThumbnailSizes().
IFDDir::Ref OpenRaw::Internals::IFDFile::m_cfaIfd [protected] |
the IFD for the CFA
Definition at line 105 of file ifdfile.h.
Referenced by OpenRaw::Internals::PEFFile::_getRawData(), OpenRaw::Internals::ORFFile::_getRawData(), OpenRaw::Internals::ERFFile::_getRawData(), OpenRaw::Internals::DNGFile::_getRawData(), and _locateThumbnail().
IFDFileContainer* OpenRaw::Internals::IFDFile::m_container [protected] |
the real container
Definition at line 95 of file ifdfile.h.
Referenced by _enumThumbnailSizes(), OpenRaw::Internals::MRWFile::_getRawData(), _getRawDataFromDir(), and OpenRaw::Internals::MRWFile::_getThumbnail().
IFDDir::Ref OpenRaw::Internals::IFDFile::m_exifIfd [protected] |
IO::Stream* OpenRaw::Internals::IFDFile::m_io [protected] |
IFDDir::Ref OpenRaw::Internals::IFDFile::m_mainIfd [protected] |