Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > e31b59fe09ff595814e8029d984f51c5 > files > 626

lib64exiv2_2-devel-0.16-3mdv2008.1.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::SonyMakerNote Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.4 -->
<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="classes.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="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</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="nav">
<a class="el" href="namespaceExiv2.html">Exiv2</a>::<a class="el" href="classExiv2_1_1SonyMakerNote.html">SonyMakerNote</a></div>
<h1>Exiv2::SonyMakerNote Class Reference</h1><!-- doxytag: class="Exiv2::SonyMakerNote" --><!-- doxytag: inherits="Exiv2::IfdMakerNote" --><a class="el" href="classExiv2_1_1MakerNote.html" title="Exif makernote interface.">MakerNote</a> for Sony cameras.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;sonymn.hpp&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for Exiv2::SonyMakerNote:</div>
<div class="dynsection">
<p><center><img src="classExiv2_1_1SonyMakerNote__inherit__graph.png" border="0" usemap="#Exiv2_1_1SonyMakerNote__inherit__map" alt="Inheritance graph"></center>
<map name="Exiv2_1_1SonyMakerNote__inherit__map">
<area shape="rect" href="classExiv2_1_1IfdMakerNote.html" title="Interface for MakerNotes in IFD format. See MakerNote." alt="" coords="11,82,221,106"><area shape="rect" href="classExiv2_1_1MakerNote.html" title="Exif makernote interface." alt="" coords="25,7,207,31"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
<div class="dynheader">
Collaboration diagram for Exiv2::SonyMakerNote:</div>
<div class="dynsection">
<p><center><img src="classExiv2_1_1SonyMakerNote__coll__graph.png" border="0" usemap="#Exiv2_1_1SonyMakerNote__coll__map" alt="Collaboration graph"></center>
<map name="Exiv2_1_1SonyMakerNote__coll__map">
<area shape="rect" href="classExiv2_1_1IfdMakerNote.html" title="Interface for MakerNotes in IFD format. See MakerNote." alt="" coords="165,182,376,206"><area shape="rect" href="classExiv2_1_1MakerNote.html" title="Exif makernote interface." alt="" coords="5,94,187,118"><area shape="rect" href="classExiv2_1_1Ifd.html" title="Models an IFD (Image File Directory)." alt="" coords="211,94,331,118"><area shape="rect" title="STL class." alt="" coords="180,6,361,30"><area shape="rect" href="classExiv2_1_1DataBuf.html" title="Utility class containing a character array. All it does is to take care of memory..." alt="" coords="355,94,515,118"><area shape="rect" href="structExiv2_1_1TagInfo.html" title="Tag information." alt="" coords="400,182,560,206"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classExiv2_1_1SonyMakerNote-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Accessors</h2></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_1SonyMakerNote.html#4e95d65bf442fcb64dd54f6241d687d2">checkHeader</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check the makernote header. This will typically check if a required prefix string is present in the header. Return 0 if successful.  <a href="#4e95d65bf442fcb64dd54f6241d687d2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classExiv2_1_1MakerNote.html#75c707e4233b5c8cea97e9ff3a32a4df">AutoPtr</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1SonyMakerNote.html#ea29d14d72d0665b5e3edcfe04998cf7">create</a> (bool alloc=true) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return an auto-pointer to an newly created, empty instance of the same type as this. The makernote entries are <b>not</b> copied. The caller owns the new object and the auto-pointer ensures that it will be deleted.  <a href="#ea29d14d72d0665b5e3edcfe04998cf7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classExiv2_1_1MakerNote.html#75c707e4233b5c8cea97e9ff3a32a4df">AutoPtr</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1SonyMakerNote.html#86341ae81e57c7f8d117c0b70be28cf6">clone</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return an auto-pointer to a clone of this object. The caller owns the new object and the auto-pointer ensures that it will be deleted.  <a href="#86341ae81e57c7f8d117c0b70be28cf6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1bda25a63e399ec6e85e05aed5a9ad1"></a><!-- doxytag: member="Exiv2::SonyMakerNote::tagList" ref="a1bda25a63e399ec6e85e05aed5a9ad1" args="()" -->
static const <a class="el" href="structExiv2_1_1TagInfo.html">TagInfo</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1SonyMakerNote.html#a1bda25a63e399ec6e85e05aed5a9ad1">tagList</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return read-only list of built-in Sony tags. <br></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="43e4a7e86623539c2d5e25bb9eeabe74"></a><!-- doxytag: member="Exiv2::SonyMakerNote::AutoPtr" ref="43e4a7e86623539c2d5e25bb9eeabe74" args="" -->
typedef std::auto_ptr<br>
&lt; <a class="el" href="classExiv2_1_1SonyMakerNote.html">SonyMakerNote</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1SonyMakerNote.html#43e4a7e86623539c2d5e25bb9eeabe74">AutoPtr</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shortcut for a SonyMakerNote auto pointer. <br></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="e23fd2668fe8d20f52158c12c3193cac"></a><!-- doxytag: member="Exiv2::SonyMakerNote::SonyMakerNote" ref="e23fd2668fe8d20f52158c12c3193cac" args="(bool alloc=true)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1SonyMakerNote.html#e23fd2668fe8d20f52158c12c3193cac">SonyMakerNote</a> (bool alloc=true)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. Allows to choose whether or not memory management is required for the makernote entries. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4f2ced9f1032d2671fc62c8f576bf8bd"></a><!-- doxytag: member="Exiv2::SonyMakerNote::SonyMakerNote" ref="4f2ced9f1032d2671fc62c8f576bf8bd" args="(const SonyMakerNote &amp;rhs)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1SonyMakerNote.html#4f2ced9f1032d2671fc62c8f576bf8bd">SonyMakerNote</a> (const <a class="el" href="classExiv2_1_1SonyMakerNote.html">SonyMakerNote</a> &amp;rhs)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4f5f5174aade45ef36a6b21e31d1748d"></a><!-- doxytag: member="Exiv2::SonyMakerNote::~SonyMakerNote" ref="4f5f5174aade45ef36a6b21e31d1748d" args="()" -->
virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1SonyMakerNote.html#4f5f5174aade45ef36a6b21e31d1748d">~SonyMakerNote</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Virtual destructor. <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_1SonyMakerNote.html#da0d7fb312a644311b67142e7ee16b2f">readHeader</a> (const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> *buf, long len, <a class="el" href="namespaceExiv2.html#94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a> byteOrder)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read the makernote header from the makernote databuffer. This method must set the offset to the start of the IFD (start_), if needed (assuming that the required information is in the header). Return 0 if successful.  <a href="#da0d7fb312a644311b67142e7ee16b2f"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<a class="el" href="classExiv2_1_1MakerNote.html" title="Exif makernote interface.">MakerNote</a> for Sony cameras. <hr><h2>Member Function Documentation</h2>
<a class="anchor" name="da0d7fb312a644311b67142e7ee16b2f"></a><!-- doxytag: member="Exiv2::SonyMakerNote::readHeader" ref="da0d7fb312a644311b67142e7ee16b2f" args="(const byte *buf, long len, ByteOrder byteOrder)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Exiv2::SonyMakerNote::readHeader           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> *&nbsp;</td>
          <td class="paramname"> <em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&nbsp;</td>
          <td class="paramname"> <em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceExiv2.html#94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a>&nbsp;</td>
          <td class="paramname"> <em>byteOrder</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Read the makernote header from the makernote databuffer. This method must set the offset to the start of the IFD (start_), if needed (assuming that the required information is in the header). Return 0 if successful. 
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>The default implementation does nothing, assuming there is no header </dd></dl>

<p>Reimplemented from <a class="el" href="classExiv2_1_1IfdMakerNote.html#1dc867ed8091d29f3bbfedc90fca8e6b">Exiv2::IfdMakerNote</a>.</p>

</div>
</div><p>
<a class="anchor" name="4e95d65bf442fcb64dd54f6241d687d2"></a><!-- doxytag: member="Exiv2::SonyMakerNote::checkHeader" ref="4e95d65bf442fcb64dd54f6241d687d2" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Exiv2::SonyMakerNote::checkHeader           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check the makernote header. This will typically check if a required prefix string is present in the header. Return 0 if successful. 
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>The default implementation does nothing, assuming there is no header </dd></dl>

<p>Reimplemented from <a class="el" href="classExiv2_1_1IfdMakerNote.html#493d295da812b64c47f5b0c4c8bf1e6d">Exiv2::IfdMakerNote</a>.</p>

</div>
</div><p>
<a class="anchor" name="ea29d14d72d0665b5e3edcfe04998cf7"></a><!-- doxytag: member="Exiv2::SonyMakerNote::create" ref="ea29d14d72d0665b5e3edcfe04998cf7" args="(bool alloc=true) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classExiv2_1_1MakerNote.html#75c707e4233b5c8cea97e9ff3a32a4df">AutoPtr</a> Exiv2::SonyMakerNote::create           </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>alloc</em> = <code>true</code>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return an auto-pointer to an newly created, empty instance of the same type as this. The makernote entries are <b>not</b> copied. The caller owns the new object and the auto-pointer ensures that it will be deleted. 
<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>alloc</em>&nbsp;</td><td>Memory management model for the newly created object. Indicates if memory required to store data should be allocated and deallocated (true) or not (false). If false, only pointers to the buffer provided to <a class="el" href="classExiv2_1_1IfdMakerNote.html#02885513935765dfd6e8fc515eaa7c65" title="Read the makernote, including the makernote header, from the Exif data buffer.">read()</a> will be kept. See <a class="el" href="classExiv2_1_1Ifd.html" title="Models an IFD (Image File Directory).">Ifd</a> for more background on this concept. </td></tr>
  </table>
</dl>

<p>Reimplemented from <a class="el" href="classExiv2_1_1IfdMakerNote.html#39b1cae1bd9b357341a6d9dd9289c259">Exiv2::IfdMakerNote</a>.</p>

</div>
</div><p>
<a class="anchor" name="86341ae81e57c7f8d117c0b70be28cf6"></a><!-- doxytag: member="Exiv2::SonyMakerNote::clone" ref="86341ae81e57c7f8d117c0b70be28cf6" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classExiv2_1_1MakerNote.html#75c707e4233b5c8cea97e9ff3a32a4df">AutoPtr</a> Exiv2::SonyMakerNote::clone           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return an auto-pointer to a clone of this object. The caller owns the new object and the auto-pointer ensures that it will be deleted. 
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>In non-alloc mode the clone potentially contains pointers to the same data buffer as the original. Use <a class="el" href="classExiv2_1_1IfdMakerNote.html#76bf8e7055b37e94db5ee000db0cec9a" title="Update the base pointer of the MakerNote and all its entries to pNewBase.">updateBase(byte* pNewBase)</a> to adjust them. </dd></dl>

<p>Reimplemented from <a class="el" href="classExiv2_1_1IfdMakerNote.html#0d3bdfc3aa1b4d197547ec9a14e1520b">Exiv2::IfdMakerNote</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="sonymn_8hpp.html">sonymn.hpp</a></ul>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Feb 5 11:51:10 2008 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.4 </small></address>
</body>
</html>