Exiv2::Internal::TiffImageEntry Class Reference

A standard TIFF IFD entry consisting of a value which is an array of offsets to image data areas. The sizes of the image data areas are provided in a related TiffSizeEntry, tag and group of which are set in the constructor. More...

#include <tiffcomposite_int.hpp>

Inheritance diagram for Exiv2::Internal::TiffImageEntry:

Inheritance graph
[legend]
Collaboration diagram for Exiv2::Internal::TiffImageEntry:

Collaboration graph
[legend]
List of all members.

Public Member Functions

Creators
 TiffImageEntry (uint16_t tag, uint16_t group, uint16_t szTag, uint16_t szGroup)
 Constructor.
virtual ~TiffImageEntry ()
 Virtual destructor.
Manipulators
virtual void setStrips (const Value *pSize, const byte *pData, uint32_t sizeData, uint32_t baseOffset)
 Set the data areas ("strips").

Protected Member Functions

Protected Manipulators
virtual void doAccept (TiffVisitor &visitor)
 Implements accept().
virtual void doEncode (TiffEncoder &encoder, const Exifdatum *datum)
 Implements encode().
virtual uint32_t doWrite (IoWrapper &ioWrapper, ByteOrder byteOrder, int32_t offset, uint32_t valueIdx, uint32_t dataIdx, uint32_t &imageIdx)
 Implements write(). Write pointers into the image data area to the ioWrapper. Return the number of bytes written. The valueIdx and dataIdx arguments are not used.
Protected Accessors
virtual uint32_t doWriteData (IoWrapper &ioWrapper, ByteOrder byteOrder, int32_t offset, uint32_t dataIdx, uint32_t &imageIdx) const
 Implements writeData(). Write the image data area to the ioWrapper. Return the number of bytes written.
virtual uint32_t doWriteImage (IoWrapper &ioWrapper, ByteOrder byteOrder) const
 Implements writeImage(). Write the image data area to the ioWrapper. Return the number of bytes written.
virtual uint32_t doSize () const
 Implements size(). Return the size of the strip pointers.
virtual uint32_t doSizeData () const
 Implements sizeData(). Return the size of the image data area.
virtual uint32_t doSizeImage () const
 Implements sizeImage(). Return the size of the image data area.

Friends

class TiffEncoder

Detailed Description

A standard TIFF IFD entry consisting of a value which is an array of offsets to image data areas. The sizes of the image data areas are provided in a related TiffSizeEntry, tag and group of which are set in the constructor.

The data is not extracted into the higher level metadata tags, it is only copied to the target image when the image is written. This component is used, e.g., for Exif.Image.StripOffsets for which the sizes are provided in Exif.Image.StripByteCounts.


Member Function Documentation

uint32_t Exiv2::Internal::TiffImageEntry::doWriteData IoWrapper ioWrapper,
ByteOrder  byteOrder,
int32_t  offset,
uint32_t  dataIdx,
uint32_t &  imageIdx
const [protected, virtual]
 

Implements writeData(). Write the image data area to the ioWrapper. Return the number of bytes written.

This function writes the image data to the data area of the current directory. It is used for TIFF image entries in the makernote (large preview images) so that the image data remains in the makernote IFD.

Reimplemented from Exiv2::Internal::TiffEntryBase.

void Exiv2::Internal::TiffImageEntry::setStrips const Value pSize,
const byte pData,
uint32_t  sizeData,
uint32_t  baseOffset
[virtual]
 

Set the data areas ("strips").

Parameters:
pSize Pointer to the Value holding the sizes corresponding to this data entry.
pData Pointer to the data area.
sizeData Size of the data area.
baseOffset Base offset into the data area.

Implements Exiv2::Internal::TiffDataEntryBase.


The documentation for this class was generated from the following files:
Generated on Thu Dec 31 03:58:22 2009 for Exiv2 by  doxygen 1.3.9.1