libopenraw
Protected Types | Protected Member Functions | Protected Attributes
OpenRaw::Internals::IFDFile Class Reference

generic IFD based raw file. More...

#include <ifdfile.h>

Inheritance diagram for OpenRaw::Internals::IFDFile:
OpenRaw::RawFile OpenRaw::Internals::ARWFile OpenRaw::Internals::Cr2File OpenRaw::Internals::MRWFile OpenRaw::Internals::OrfFile OpenRaw::Internals::PEFFile OpenRaw::Internals::TiffEpFile OpenRaw::Internals::DNGFile OpenRaw::Internals::ERFFile OpenRaw::Internals::NEFFile

List of all members.

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::Streamm_io
IFDFileContainerm_container
IFDDir::Ref m_cfaIfd
IFDDir::Ref m_mainIfd
IFDDir::Ref m_exifIfd

Detailed Description

generic IFD based raw file.

Definition at line 62 of file ifdfile.h.


Member Function Documentation

or_error OpenRaw::Internals::IFDFile::_enumThumbnailSizes ( std::vector< uint32_t > &  list) [protected, virtual]

list the thumbnails in the IFD

Return values:
listthe list of thumbnails
Returns:
the error code. OR_ERROR_NOT_FOUND if no thumbnail are found.

Implements OpenRaw::RawFile.

Reimplemented in OpenRaw::Internals::MRWFile.

Definition at line 99 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]
or_error OpenRaw::Internals::IFDFile::_locateThumbnail ( const IFDDir::Ref &  dir,
std::vector< uint32_t > &  list 
) [protected]

locate the thumnail in the IFD

Parameters:
dirthe IFDDir where to locate the thumbnail
Returns:
the error code. OR_ERROR_NOT_FOUND if the thumbnail are not found.

Definition at line 141 of file ifdfile.cpp.

References m_cfaIfd, and m_io.

Referenced by _enumThumbnailSizes().


Member Data Documentation

IFDDir::Ref OpenRaw::Internals::IFDFile::m_cfaIfd [protected]
IFDDir::Ref OpenRaw::Internals::IFDFile::m_exifIfd [protected]

the Exif IFD

Definition at line 110 of file ifdfile.h.

Referenced by _getRawDataFromDir().

the IO handle

Definition at line 94 of file ifdfile.h.

Referenced by _locateThumbnail().

IFDDir::Ref OpenRaw::Internals::IFDFile::m_mainIfd [protected]

the IFD for the main image does not necessarily reference the CFA

Definition at line 106 of file ifdfile.h.


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