<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Exiv2: Exiv2::Internal::TiffArrayEntry Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.9 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> <li> <form action="search.php" method="get"> <table cellspacing="0" cellpadding="0" border="0"> <tr> <td><label> <u>S</u>earch for </label></td> <td><input type="text" name="query" value="" size="20" accesskey="s"/></td> </tr> </table> </form> </li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="namespaceExiv2.html">Exiv2</a>::<a class="el" href="namespaceExiv2_1_1Internal.html">Internal</a>::<a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html">TiffArrayEntry</a> </div> </div> <div class="contents"> <h1>Exiv2::Internal::TiffArrayEntry Class Reference</h1><!-- doxytag: class="Exiv2::Internal::TiffArrayEntry" --><!-- doxytag: inherits="Exiv2::Internal::TiffEntryBase" -->Composite to model an array of tags, each consisting of values of a given type. Canon and Minolta makernotes use such tags. The elements of this component are of type <a class="el" href="classExiv2_1_1Internal_1_1TiffArrayElement.html" title="Element of a TiffArrayEntry. The value of all elements of a TiffArrayEntry must be...">TiffArrayElement</a>. <a href="#_details">More...</a> <p> <code>#include <tiffcomposite_int.hpp></code> <p> <div class="dynheader"> Inheritance diagram for Exiv2::Internal::TiffArrayEntry:</div> <div class="dynsection"> <p><center><img src="classExiv2_1_1Internal_1_1TiffArrayEntry__inherit__graph.png" border="0" usemap="#Exiv2_1_1Internal_1_1TiffArrayEntry__inherit__map" alt="Inheritance graph"></center> <map name="Exiv2_1_1Internal_1_1TiffArrayEntry__inherit__map"> <area shape="rect" id="node2" href="classExiv2_1_1Internal_1_1TiffEntryBase.html" title="This abstract base class provides the common functionality of an IFD directory entry..." alt="" coords="11,80,331,107"><area shape="rect" id="node4" href="classExiv2_1_1Internal_1_1TiffComponent.html" title="Interface class for components of a TIFF directory hierarchy (Composite pattern)..." alt="" coords="11,5,331,32"></map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> <div class="dynheader"> Collaboration diagram for Exiv2::Internal::TiffArrayEntry:</div> <div class="dynsection"> <p><center><img src="classExiv2_1_1Internal_1_1TiffArrayEntry__coll__graph.png" border="0" usemap="#Exiv2_1_1Internal_1_1TiffArrayEntry__coll__map" alt="Collaboration graph"></center> <map name="Exiv2_1_1Internal_1_1TiffArrayEntry__coll__map"> <area shape="rect" id="node2" href="classExiv2_1_1Internal_1_1TiffEntryBase.html" title="This abstract base class provides the common functionality of an IFD directory entry..." alt="" coords="132,96,452,123"><area shape="rect" id="node4" href="classExiv2_1_1Internal_1_1TiffComponent.html" title="Interface class for components of a TIFF directory hierarchy (Composite pattern)..." alt="" coords="5,5,325,32"><area shape="rect" id="node6" href="classExiv2_1_1Value.html" title="Common interface for all types of values used with metadata." alt="" coords="349,5,491,32"></map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> <p> <a href="classExiv2_1_1Internal_1_1TiffArrayEntry-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td colspan="2"><div class="groupHeader">Creators</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7eecda3eded241e27897e06a02d8685b"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::TiffArrayEntry" ref="7eecda3eded241e27897e06a02d8685b" args="(uint16_t tag, uint16_t group, uint16_t elGroup, TiffType elTiffType, bool addSizeElement)" --> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#7eecda3eded241e27897e06a02d8685b">TiffArrayEntry</a> (uint16_t tag, uint16_t group, uint16_t elGroup, <a class="el" href="namespaceExiv2_1_1Internal.html#92e26f19f175769648d77d532e3cbad6">TiffType</a> elTiffType, bool addSizeElement)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="12ca685ea90f564ccfa84e9906032e65"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::~TiffArrayEntry" ref="12ca685ea90f564ccfa84e9906032e65" args="()" --> virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#12ca685ea90f564ccfa84e9906032e65">~TiffArrayEntry</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Virtual destructor. <br></td></tr> <tr><td colspan="2"><div class="groupHeader">Accessors</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9f3adbf33c1b7f03bca0307f64f2b559"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::elSize" ref="9f3adbf33c1b7f03bca0307f64f2b559" args="() const " --> uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#9f3adbf33c1b7f03bca0307f64f2b559">elSize</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the size of the array elements. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a7ba56227f90bff813f4f2a5cb55f326"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::elGroup" ref="a7ba56227f90bff813f4f2a5cb55f326" args="() const " --> uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#a7ba56227f90bff813f4f2a5cb55f326">elGroup</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the group for the array elements. <br></td></tr> <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> <tr><td colspan="2"><div class="groupHeader">Manipulators</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f3631ffa46be8e38ef9c79f197a1bdd2"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::doAddPath" ref="f3631ffa46be8e38ef9c79f197a1bdd2" args="(uint16_t tag, TiffPath &tiffPath)" --> virtual <a class="el" href="classExiv2_1_1Internal_1_1TiffComponent.html">TiffComponent</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#f3631ffa46be8e38ef9c79f197a1bdd2">doAddPath</a> (uint16_t tag, <a class="el" href="namespaceExiv2_1_1Internal.html#b19b0d2996c210036ff4c659eac717eb">TiffPath</a> &tiffPath)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Implements <a class="el" href="classExiv2_1_1Internal_1_1TiffComponent.html#2f118371ca882315b407ae5d04df6702" title="Add a TIFF entry tag to the component. Components on the path to the entry are added...">addPath()</a>. The default implementation does nothing. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8d6daa6c18aa6bc6dd06404e455ee7bd"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::doAddChild" ref="8d6daa6c18aa6bc6dd06404e455ee7bd" args="(TiffComponent::AutoPtr tiffComponent)" --> virtual <a class="el" href="classExiv2_1_1Internal_1_1TiffComponent.html">TiffComponent</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#8d6daa6c18aa6bc6dd06404e455ee7bd">doAddChild</a> (<a class="el" href="classExiv2_1_1Internal_1_1TiffComponent.html#e6f6d2a03171e797fccd52abde24e3ca">TiffComponent::AutoPtr</a> tiffComponent)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Implements <a class="el" href="classExiv2_1_1Internal_1_1TiffComponent.html#1825bde24910a87e05777b4bd3c0ea5d" title="Add a child to the component. Default is to do nothing.">addChild()</a>. The default implementation does nothing. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4db037cf5879ec4bdf3d56804389f632"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::doAccept" ref="4db037cf5879ec4bdf3d56804389f632" args="(TiffVisitor &visitor)" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#4db037cf5879ec4bdf3d56804389f632">doAccept</a> (<a class="el" href="classExiv2_1_1Internal_1_1TiffVisitor.html">TiffVisitor</a> &visitor)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Implements <a class="el" href="classExiv2_1_1Internal_1_1TiffComponent.html#e76a57686b20b3f0db99dd43162e6aef" title="Interface to accept visitors (Visitor pattern). Visitors can perform operations on...">accept()</a>. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="225251fda384eabe066403c325915681"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::doEncode" ref="225251fda384eabe066403c325915681" args="(TiffEncoder &encoder, const Exifdatum *datum)" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#225251fda384eabe066403c325915681">doEncode</a> (<a class="el" href="classExiv2_1_1Internal_1_1TiffEncoder.html">TiffEncoder</a> &encoder, const <a class="el" href="classExiv2_1_1Exifdatum.html">Exifdatum</a> *datum)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Implements <a class="el" href="classExiv2_1_1Internal_1_1TiffEntryBase.html#120f4553c20edd9a3bedb5bfb2b70627" title="Encode a TIFF component from the metadatum provided and information from the encoder...">encode()</a>. <br></td></tr> <tr><td colspan="2"><div class="groupHeader">Accessors</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1a5f64abc3d7d697a997289dfd68a465"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::doCount" ref="1a5f64abc3d7d697a997289dfd68a465" args="() const " --> virtual uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#1a5f64abc3d7d697a997289dfd68a465">doCount</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Implements <a class="el" href="classExiv2_1_1Internal_1_1TiffComponent.html#8a6995093d8709c2f5061512d0d0f21f" title="Return the number of components in this component.">count()</a>. Return number of components in the entry. <br></td></tr> <tr><td colspan="2"><div class="groupHeader">Write support (Manipulators)</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5ac8d48196ed0ff52a8807c1917691c3"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::doWrite" ref="5ac8d48196ed0ff52a8807c1917691c3" args="(Blob &blob, ByteOrder byteOrder, int32_t offset, uint32_t valueIdx, uint32_t dataIdx, uint32_t &imageIdx)" --> virtual uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#5ac8d48196ed0ff52a8807c1917691c3">doWrite</a> (<a class="el" href="namespaceExiv2.html#6e7b9a2ef47caec919b15f1ae6ff4872">Blob</a> &blob, <a class="el" href="namespaceExiv2.html#94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a> byteOrder, int32_t offset, uint32_t valueIdx, uint32_t dataIdx, uint32_t &imageIdx)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Implements <a class="el" href="classExiv2_1_1Internal_1_1TiffComponent.html#55718c4016169c10a3f798aa5f578ef2" title="Write a TiffComponent to a binary image.">write()</a>. Write each component, fill gaps with 0s. Check for duplicate tags and throw Error(50) if any are detected. <br></td></tr> <tr><td colspan="2"><div class="groupHeader">Write support (Accessors)</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f6b5236af564cc5f4827f3c5ec18b5b8"></a><!-- doxytag: member="Exiv2::Internal::TiffArrayEntry::doSize" ref="f6b5236af564cc5f4827f3c5ec18b5b8" args="() const " --> virtual uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Internal_1_1TiffArrayEntry.html#f6b5236af564cc5f4827f3c5ec18b5b8">doSize</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Implements <a class="el" href="classExiv2_1_1Internal_1_1TiffComponent.html#70cb160a3ee96b6f3d4121e85f3628ab" title="Return the size in bytes of the IFD value of this component when written to a binary...">size()</a>. <br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Composite to model an array of tags, each consisting of values of a given type. Canon and Minolta makernotes use such tags. The elements of this component are of type <a class="el" href="classExiv2_1_1Internal_1_1TiffArrayElement.html" title="Element of a TiffArrayEntry. The value of all elements of a TiffArrayEntry must be...">TiffArrayElement</a>. <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="tiffcomposite__int_8hpp.html">tiffcomposite_int.hpp</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Thu Jun 25 15:18:15 2009 for Exiv2 by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address> </body> </html>