Sophie

Sophie

distrib > * > 2010.0 > * > by-pkgid > b36c97ff723e66f0f38bce83645c99dc > files > 649

exiv2-doc-0.18.2-1mdv2010.0.x86_64.rpm

<!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::JpegImage 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&nbsp;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>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</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&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespaceExiv2.html">Exiv2</a>::<a class="el" href="classExiv2_1_1JpegImage.html">JpegImage</a>
  </div>
</div>
<div class="contents">
<h1>Exiv2::JpegImage Class Reference</h1><!-- doxytag: class="Exiv2::JpegImage" --><!-- doxytag: inherits="Exiv2::JpegBase" -->Class to access JPEG images.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;jpgimage.hpp&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for Exiv2::JpegImage:</div>
<div class="dynsection">
<p><center><img src="classExiv2_1_1JpegImage__inherit__graph.png" border="0" usemap="#Exiv2_1_1JpegImage__inherit__map" alt="Inheritance graph"></center>
<map name="Exiv2_1_1JpegImage__inherit__map">
<area shape="rect" id="node2" href="classExiv2_1_1JpegBase.html" title="Abstract helper base class to access JPEG images." alt="" coords="11,80,181,107"><area shape="rect" id="node4" href="classExiv2_1_1Image.html" title="Abstract base class defining the interface for an image. This is the top&#45;level interface..." alt="" coords="25,5,167,32"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
<div class="dynheader">
Collaboration diagram for Exiv2::JpegImage:</div>
<div class="dynsection">
<p><center><img src="classExiv2_1_1JpegImage__coll__graph.png" border="0" usemap="#Exiv2_1_1JpegImage__coll__map" alt="Collaboration graph"></center>
<map name="Exiv2_1_1JpegImage__coll__map">
<area shape="rect" id="node2" href="classExiv2_1_1JpegBase.html" title="Abstract helper base class to access JPEG images." alt="" coords="3113,288,3284,315"><area shape="rect" id="node4" href="classExiv2_1_1Image.html" title="Abstract base class defining the interface for an image. This is the top&#45;level interface..." alt="" coords="2920,288,3061,315"><area shape="rect" id="node6" href="classExiv2_1_1ExifData.html" title="A container for Exif data. This is a top&#45;level class of the Exiv2 library. The container..." alt="" coords="2433,365,2604,392"><area shape="rect" id="node10" href="classExiv2_1_1Exifdatum.html" title="An Exif metadatum, consisting of an ExifKey and a Value and methods to manipulate..." alt="" coords="1329,347,1511,373"><area shape="rect" id="node12" href="classExiv2_1_1Metadatum.html" title="Abstract base class defining the interface to access information related to one metadata..." alt="" coords="973,411,1155,437"><area shape="rect" id="node40" href="classExiv2_1_1Xmpdatum.html" title="Information related to an XMP property. An XMP metadatum consists of an XmpKey and..." alt="" coords="1760,268,1931,295"><area shape="rect" id="node58" href="classExiv2_1_1Iptcdatum.html" title="An IPTC metadatum (&quot;dataset&quot;), consisting of an IptcKey and a Value and..." alt="" coords="1329,443,1511,469"><area shape="rect" id="node16" href="classExiv2_1_1ExifKey.html" title="Concrete keys for Exif metadata." alt="" coords="592,245,752,272"><area shape="rect" id="node18" href="classExiv2_1_1Key.html" title="Abstract base class defining the Key of a metadatum. Keys are used to identify and..." alt="" coords="316,291,436,317"><area shape="rect" id="node47" href="classExiv2_1_1XmpKey.html" title="Concrete keys for XMP metadata." alt="" coords="596,175,748,201"><area shape="rect" id="node63" href="classExiv2_1_1IptcKey.html" title="Concrete keys for IPTC metadata." alt="" coords="592,472,752,499"><area shape="rect" id="node20" title="STL class." alt="" coords="311,168,441,195"><area shape="rect" id="node22" title="STL class." alt="" coords="7,168,257,195"><area shape="rect" id="node24" title="STL class." alt="" coords="572,316,772,343"><area shape="rect" id="node33" title="STL class." alt="" coords="1329,493,1511,520"><area shape="rect" id="node43" href="structExiv2_1_1Xmpdatum_1_1Impl.html" title="Internal Pimpl structure of class Xmpdatum." alt="" coords="1304,197,1536,224"><area shape="rect" id="node30" href="classExiv2_1_1Value.html" title="Common interface for all types of values used with metadata." alt="" coords="601,421,743,448"><area shape="rect" id="node36" href="classExiv2_1_1XmpData.html" title="A container for XMP data. This is a top&#45;level class of the Exiv2 library." alt="" coords="2631,288,2791,315"><area shape="rect" id="node54" href="classExiv2_1_1IptcData.html" title="A container for IPTC data. This is a top&#45;level class of the Exiv2 library." alt="" coords="2433,413,2604,440"><area shape="rect" id="node72" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO." alt="" coords="592,72,752,99"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classExiv2_1_1JpegImage-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">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1JpegImage.html#3b477e95800ba50d5f231a36236596bf">JpegImage</a> (<a class="el" href="classExiv2_1_1BasicIo.html#f8f989522925b884d8c9d3a257265fa1">BasicIo::AutoPtr</a> io, bool create)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor that can either open an existing Jpeg image or create a new image from scratch. If a new image is to be created, any existing data is overwritten. Since the constructor can not return a result, callers should check the <a class="el" href="classExiv2_1_1Image.html#057cb663d5666ca5c0515a3957d15102" title="Check if the Image instance is valid. Use after object construction.">good()</a> method after object construction to determine success or failure.  <a href="#3b477e95800ba50d5f231a36236596bf"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader">Accessors</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1JpegImage.html#2613112f484b6bd091d599991c38aeef">mimeType</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the MIME type of the image.  <a href="#2613112f484b6bd091d599991c38aeef"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Accessors</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1JpegImage.html#5a1d72c08c64f28afd557500c6f78f0a">isThisType</a> (<a class="el" href="classExiv2_1_1BasicIo.html">BasicIo</a> &amp;iIo, bool advance) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if the content of the <a class="el" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO.">BasicIo</a> instance is of the type supported by this class.  <a href="#5a1d72c08c64f28afd557500c6f78f0a"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader">Manipulators</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1JpegImage.html#8a3082eb94f566db8b52ae5dfd80754d">writeHeader</a> (<a class="el" href="classExiv2_1_1BasicIo.html">BasicIo</a> &amp;oIo) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writes a Jpeg header (aka signature) to the <a class="el" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO.">BasicIo</a> instance.  <a href="#8a3082eb94f566db8b52ae5dfd80754d"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e19b36616ee5d8202ab703922fd38278"></a><!-- doxytag: member="Exiv2::JpegImage::isJpegType" ref="e19b36616ee5d8202ab703922fd38278" args="(BasicIo &amp;iIo, bool advance)" -->
EXIV2API bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1JpegImage.html#e19b36616ee5d8202ab703922fd38278">isJpegType</a> (<a class="el" href="classExiv2_1_1BasicIo.html">BasicIo</a> &amp;iIo, bool advance)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if the file iIo is a JPEG image. <br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Class to access JPEG images. <hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="3b477e95800ba50d5f231a36236596bf"></a><!-- doxytag: member="Exiv2::JpegImage::JpegImage" ref="3b477e95800ba50d5f231a36236596bf" args="(BasicIo::AutoPtr io, bool create)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Exiv2::JpegImage::JpegImage           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classExiv2_1_1BasicIo.html#f8f989522925b884d8c9d3a257265fa1">BasicIo::AutoPtr</a>&nbsp;</td>
          <td class="paramname"> <em>io</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>create</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructor that can either open an existing Jpeg image or create a new image from scratch. If a new image is to be created, any existing data is overwritten. Since the constructor can not return a result, callers should check the <a class="el" href="classExiv2_1_1Image.html#057cb663d5666ca5c0515a3957d15102" title="Check if the Image instance is valid. Use after object construction.">good()</a> method after object construction to determine success or failure. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>io</em>&nbsp;</td><td>An auto-pointer that owns a <a class="el" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO.">BasicIo</a> instance used for reading and writing image metadata. <b>Important:</b> The constructor takes ownership of the passed in <a class="el" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO.">BasicIo</a> instance through the auto-pointer. Callers should not continue to use the <a class="el" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO.">BasicIo</a> instance after it is passed to this method. Use the <a class="el" href="classExiv2_1_1Image.html#5b4560b599ff50e28e3dc31fba62431e" title="Return a reference to the BasicIo instance being used for Io.">Image::io()</a> method to get a temporary reference. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>create</em>&nbsp;</td><td>Specifies if an existing image should be read (false) or if a new file should be created (true). </td></tr>
  </table>
</dl>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="5a1d72c08c64f28afd557500c6f78f0a"></a><!-- doxytag: member="Exiv2::JpegImage::isThisType" ref="5a1d72c08c64f28afd557500c6f78f0a" args="(BasicIo &amp;iIo, bool advance) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Exiv2::JpegImage::isThisType           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classExiv2_1_1BasicIo.html">BasicIo</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>iIo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>advance</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Determine if the content of the <a class="el" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO.">BasicIo</a> instance is of the type supported by this class. 
<p>
The advance flag determines if the read position in the stream is moved (see below). This applies only if the type matches and the function returns true. If the type does not match, the stream position is not changed. However, if reading from the stream fails, the stream position is undefined. Consult the stream state to obtain more information in this case.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>iIo</em>&nbsp;</td><td><a class="el" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO.">BasicIo</a> instance to read from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>advance</em>&nbsp;</td><td>Flag indicating whether the position of the io should be advanced by the number of characters read to analyse the data (true) or left at its original position (false). This applies only if the type matches. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the data matches the type of this class;<br>
 false if the data does not match </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1JpegBase.html#ad464a055fd28f2f0e9f99af3967f208">Exiv2::JpegBase</a>.</p>

</div>
</div><p>
<a class="anchor" name="2613112f484b6bd091d599991c38aeef"></a><!-- doxytag: member="Exiv2::JpegImage::mimeType" ref="2613112f484b6bd091d599991c38aeef" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string Exiv2::JpegImage::mimeType           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the MIME type of the image. 
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>For each supported image format, the library knows only one MIME type. This may not be the most specific MIME type for that format. In particular, several RAW formats are variants of the TIFF format with the same magic as TIFF itself. Class <a class="el" href="classExiv2_1_1TiffImage.html" title="Class to access TIFF images. Exif metadata is supported directly, IPTC is read from...">TiffImage</a> handles most of them and thus they all have MIME type "image/tiff", although a more specific MIME type may exist (e.g., "image/x-nikon-nef"). </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Image.html#5c517b500586613595e2e1b62601657a">Exiv2::Image</a>.</p>

</div>
</div><p>
<a class="anchor" name="8a3082eb94f566db8b52ae5dfd80754d"></a><!-- doxytag: member="Exiv2::JpegImage::writeHeader" ref="8a3082eb94f566db8b52ae5dfd80754d" args="(BasicIo &amp;oIo) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Exiv2::JpegImage::writeHeader           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classExiv2_1_1BasicIo.html">BasicIo</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>oIo</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Writes a Jpeg header (aka signature) to the <a class="el" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO.">BasicIo</a> instance. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>oIo</em>&nbsp;</td><td><a class="el" href="classExiv2_1_1BasicIo.html" title="An interface for simple binary IO.">BasicIo</a> instance that the header is written to. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 if successful;<br>
 2 if the input image is invalid or can not be read;<br>
 4 if the temporary image can not be written to;<br>
 -3 other temporary errors </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1JpegBase.html#17bc2fe8a8e2562ae18d220e695cf2bf">Exiv2::JpegBase</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="jpgimage_8hpp.html">jpgimage.hpp</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Thu Jun 25 15:18:00 2009 for Exiv2 by&nbsp;
<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>