Sophie

Sophie

distrib > Mageia > 5 > x86_64 > media > core-updates > by-pkgid > 8b93c7974abbd359ec3a5ea81eee3220 > files > 860

exiv2-doc-0.24-5.2.mga5.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.8"/>
<title>Exiv2: Exiv2::ValueType&lt; T &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Exiv2
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;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>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceExiv2.html">Exiv2</a></li><li class="navelem"><a class="el" href="classExiv2_1_1ValueType.html">ValueType</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classExiv2_1_1ValueType-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Exiv2::ValueType&lt; T &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Template for a Value of a basic type. This is used for unsigned and signed short, long and rationals.  
 <a href="classExiv2_1_1ValueType.html#details">More...</a></p>

<p><code>#include &lt;value.hpp&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for Exiv2::ValueType&lt; T &gt;:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="classExiv2_1_1ValueType__inherit__graph.png" border="0" usemap="#Exiv2_1_1ValueType_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="Exiv2_1_1ValueType_3_01T_01_4_inherit__map" id="Exiv2_1_1ValueType_3_01T_01_4_inherit__map">
<area shape="rect" id="node2" href="classExiv2_1_1Value.html" title="Common interface for all types of values used with metadata. " alt="" coords="50,5,193,32"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-1-trigger" src="closed.png" alt="+"/> Collaboration diagram for Exiv2::ValueType&lt; T &gt;:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="classExiv2_1_1ValueType__coll__graph.png" border="0" usemap="#Exiv2_1_1ValueType_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="Exiv2_1_1ValueType_3_01T_01_4_coll__map" id="Exiv2_1_1ValueType_3_01T_01_4_coll__map">
<area shape="rect" id="node2" href="classExiv2_1_1Value.html" title="Common interface for all types of values used with metadata. " alt="" coords="50,5,193,32"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a0c76c512468a47f6eac463f4af278a14"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c76c512468a47f6eac463f4af278a14"></a>
typedef std::auto_ptr<br class="typebreak" />
&lt; <a class="el" href="classExiv2_1_1ValueType.html">ValueType</a>&lt; T &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a0c76c512468a47f6eac463f4af278a14">AutoPtr</a></td></tr>
<tr class="memdesc:a0c76c512468a47f6eac463f4af278a14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shortcut for a ValueType&lt;T&gt; auto pointer. <br /></td></tr>
<tr class="separator:a0c76c512468a47f6eac463f4af278a14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88ed5f3e8f59a9cf00eee8c6027e9f87"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a88ed5f3e8f59a9cf00eee8c6027e9f87"></a>
typedef std::vector&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a88ed5f3e8f59a9cf00eee8c6027e9f87">ValueList</a></td></tr>
<tr class="memdesc:a88ed5f3e8f59a9cf00eee8c6027e9f87"><td class="mdescLeft">&#160;</td><td class="mdescRight">Container for values. <br /></td></tr>
<tr class="separator:a88ed5f3e8f59a9cf00eee8c6027e9f87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38d2c3d37e48bd5b3c00f3693e493ad8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a38d2c3d37e48bd5b3c00f3693e493ad8"></a>
typedef std::vector&lt; T &gt;::<a class="el" href="classExiv2_1_1ValueType.html#a38d2c3d37e48bd5b3c00f3693e493ad8">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a38d2c3d37e48bd5b3c00f3693e493ad8">iterator</a></td></tr>
<tr class="memdesc:a38d2c3d37e48bd5b3c00f3693e493ad8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterator type defined for convenience. <br /></td></tr>
<tr class="separator:a38d2c3d37e48bd5b3c00f3693e493ad8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab13bcf1ea775648daac65bc13817235d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab13bcf1ea775648daac65bc13817235d"></a>
typedef std::vector&lt; T &gt;<br class="typebreak" />
::<a class="el" href="classExiv2_1_1ValueType.html#ab13bcf1ea775648daac65bc13817235d">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#ab13bcf1ea775648daac65bc13817235d">const_iterator</a></td></tr>
<tr class="memdesc:ab13bcf1ea775648daac65bc13817235d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Const iterator type defined for convenience. <br /></td></tr>
<tr class="separator:ab13bcf1ea775648daac65bc13817235d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classExiv2_1_1Value"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classExiv2_1_1Value')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classExiv2_1_1Value.html">Exiv2::Value</a></td></tr>
<tr class="memitem:a0f62e585b82c97738858b743e60dff21 inherit pub_types_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f62e585b82c97738858b743e60dff21"></a>
typedef std::auto_ptr&lt; <a class="el" href="classExiv2_1_1Value.html">Value</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#a0f62e585b82c97738858b743e60dff21">AutoPtr</a></td></tr>
<tr class="memdesc:a0f62e585b82c97738858b743e60dff21 inherit pub_types_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shortcut for a Value auto pointer. <br /></td></tr>
<tr class="separator:a0f62e585b82c97738858b743e60dff21 inherit pub_types_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a647fe7bad8b9fd92d29f6d6ad16f28a0"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a647fe7bad8b9fd92d29f6d6ad16f28a0"><td class="memTemplItemLeft" align="right" valign="top">long&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a647fe7bad8b9fd92d29f6d6ad16f28a0">toLong</a> (long n) const</td></tr>
<tr class="memdesc:a647fe7bad8b9fd92d29f6d6ad16f28a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a long. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#a647fe7bad8b9fd92d29f6d6ad16f28a0">More...</a><br /></td></tr>
<tr class="separator:a647fe7bad8b9fd92d29f6d6ad16f28a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d7083471cf9e61c9c27785f2a70721d"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a1d7083471cf9e61c9c27785f2a70721d"><td class="memTemplItemLeft" align="right" valign="top">long&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a1d7083471cf9e61c9c27785f2a70721d">toLong</a> (long n) const</td></tr>
<tr class="memdesc:a1d7083471cf9e61c9c27785f2a70721d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a long. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#a1d7083471cf9e61c9c27785f2a70721d">More...</a><br /></td></tr>
<tr class="separator:a1d7083471cf9e61c9c27785f2a70721d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add531529e862d86deca7eea4c76f5c4d"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:add531529e862d86deca7eea4c76f5c4d"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#add531529e862d86deca7eea4c76f5c4d">toFloat</a> (long n) const</td></tr>
<tr class="memdesc:add531529e862d86deca7eea4c76f5c4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a float. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#add531529e862d86deca7eea4c76f5c4d">More...</a><br /></td></tr>
<tr class="separator:add531529e862d86deca7eea4c76f5c4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23f797186d8e93284a90bb9a9b215b1f"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a23f797186d8e93284a90bb9a9b215b1f"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a23f797186d8e93284a90bb9a9b215b1f">toFloat</a> (long n) const</td></tr>
<tr class="memdesc:a23f797186d8e93284a90bb9a9b215b1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a float. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#a23f797186d8e93284a90bb9a9b215b1f">More...</a><br /></td></tr>
<tr class="separator:a23f797186d8e93284a90bb9a9b215b1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a517dba8c00607833f4e06194603c73c6"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a517dba8c00607833f4e06194603c73c6"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a517dba8c00607833f4e06194603c73c6">toRational</a> (long n) const</td></tr>
<tr class="memdesc:a517dba8c00607833f4e06194603c73c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#a517dba8c00607833f4e06194603c73c6">More...</a><br /></td></tr>
<tr class="separator:a517dba8c00607833f4e06194603c73c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81719ee8a0892aae5765d66d00b77dfc"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a81719ee8a0892aae5765d66d00b77dfc"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a81719ee8a0892aae5765d66d00b77dfc">toRational</a> (long n) const</td></tr>
<tr class="memdesc:a81719ee8a0892aae5765d66d00b77dfc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#a81719ee8a0892aae5765d66d00b77dfc">More...</a><br /></td></tr>
<tr class="separator:a81719ee8a0892aae5765d66d00b77dfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed8ff3edec29000ce609e1f756ff7742"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:aed8ff3edec29000ce609e1f756ff7742"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#aed8ff3edec29000ce609e1f756ff7742">toRational</a> (long n) const</td></tr>
<tr class="memdesc:aed8ff3edec29000ce609e1f756ff7742"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#aed8ff3edec29000ce609e1f756ff7742">More...</a><br /></td></tr>
<tr class="separator:aed8ff3edec29000ce609e1f756ff7742"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1da49c1d89dcc35f2dd74a0c73e5e0d"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:af1da49c1d89dcc35f2dd74a0c73e5e0d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#af1da49c1d89dcc35f2dd74a0c73e5e0d">toRational</a> (long n) const</td></tr>
<tr class="memdesc:af1da49c1d89dcc35f2dd74a0c73e5e0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#af1da49c1d89dcc35f2dd74a0c73e5e0d">More...</a><br /></td></tr>
<tr class="separator:af1da49c1d89dcc35f2dd74a0c73e5e0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Creators</div></td></tr>
<tr class="memitem:a8c61467a7dd9a7ecf79a72e26e329ffb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8c61467a7dd9a7ecf79a72e26e329ffb"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a8c61467a7dd9a7ecf79a72e26e329ffb">ValueType</a> ()</td></tr>
<tr class="memdesc:a8c61467a7dd9a7ecf79a72e26e329ffb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Constructor. <br /></td></tr>
<tr class="separator:a8c61467a7dd9a7ecf79a72e26e329ffb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6710435c5371f8bb650a0d563992c78a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6710435c5371f8bb650a0d563992c78a"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a6710435c5371f8bb650a0d563992c78a">ValueType</a> (<a class="el" href="namespaceExiv2.html#a5153319711f35fe81cbc13f4b852450c">TypeId</a> <a class="el" href="classExiv2_1_1Value.html#a1a56299aad4e614c4f0225d97530c038">typeId</a>)</td></tr>
<tr class="memdesc:a6710435c5371f8bb650a0d563992c78a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
<tr class="separator:a6710435c5371f8bb650a0d563992c78a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a191f1d8f864f169d40202e32dd59a0f2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a191f1d8f864f169d40202e32dd59a0f2"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a191f1d8f864f169d40202e32dd59a0f2">ValueType</a> (const <a class="el" href="namespaceExiv2.html#a16f60a5bd4207fe155f6cf93a15efa72">byte</a> *buf, long len, <a class="el" href="namespaceExiv2.html#a94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a> byteOrder, <a class="el" href="namespaceExiv2.html#a5153319711f35fe81cbc13f4b852450c">TypeId</a> <a class="el" href="classExiv2_1_1Value.html#a1a56299aad4e614c4f0225d97530c038">typeId</a>=<a class="el" href="namespaceExiv2.html#af0b83a1433a7a18fcf0a09b082714f3b">getType</a>&lt; T &gt;())</td></tr>
<tr class="memdesc:a191f1d8f864f169d40202e32dd59a0f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
<tr class="separator:a191f1d8f864f169d40202e32dd59a0f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a168b70cf24a0d7839174d65a8046f0b7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a168b70cf24a0d7839174d65a8046f0b7"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a168b70cf24a0d7839174d65a8046f0b7">ValueType</a> (const T &amp;val, <a class="el" href="namespaceExiv2.html#a5153319711f35fe81cbc13f4b852450c">TypeId</a> <a class="el" href="classExiv2_1_1Value.html#a1a56299aad4e614c4f0225d97530c038">typeId</a>=<a class="el" href="namespaceExiv2.html#af0b83a1433a7a18fcf0a09b082714f3b">getType</a>&lt; T &gt;())</td></tr>
<tr class="memdesc:a168b70cf24a0d7839174d65a8046f0b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
<tr class="separator:a168b70cf24a0d7839174d65a8046f0b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70608f4c0740f6b8413f684a5dd256b6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70608f4c0740f6b8413f684a5dd256b6"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a70608f4c0740f6b8413f684a5dd256b6">ValueType</a> (const <a class="el" href="classExiv2_1_1ValueType.html">ValueType</a>&lt; T &gt; &amp;rhs)</td></tr>
<tr class="memdesc:a70608f4c0740f6b8413f684a5dd256b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor. <br /></td></tr>
<tr class="separator:a70608f4c0740f6b8413f684a5dd256b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f7a81b12f6bd8ec4e0d45f16a75ef35"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4f7a81b12f6bd8ec4e0d45f16a75ef35"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a4f7a81b12f6bd8ec4e0d45f16a75ef35">~ValueType</a> ()</td></tr>
<tr class="memdesc:a4f7a81b12f6bd8ec4e0d45f16a75ef35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual destructor. <br /></td></tr>
<tr class="separator:a4f7a81b12f6bd8ec4e0d45f16a75ef35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Manipulators</div></td></tr>
<tr class="memitem:a0bd0a1b7695e49e7ea4fd8fe449be2bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0bd0a1b7695e49e7ea4fd8fe449be2bf"></a>
<a class="el" href="classExiv2_1_1ValueType.html">ValueType</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a0bd0a1b7695e49e7ea4fd8fe449be2bf">operator=</a> (const <a class="el" href="classExiv2_1_1ValueType.html">ValueType</a>&lt; T &gt; &amp;rhs)</td></tr>
<tr class="memdesc:a0bd0a1b7695e49e7ea4fd8fe449be2bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator. <br /></td></tr>
<tr class="separator:a0bd0a1b7695e49e7ea4fd8fe449be2bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a725c88fdf395b0dba55c13794b458b69"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a725c88fdf395b0dba55c13794b458b69">read</a> (const <a class="el" href="namespaceExiv2.html#a16f60a5bd4207fe155f6cf93a15efa72">byte</a> *buf, long len, <a class="el" href="namespaceExiv2.html#a94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a> byteOrder)</td></tr>
<tr class="memdesc:a725c88fdf395b0dba55c13794b458b69"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read the value from a character buffer.  <a href="#a725c88fdf395b0dba55c13794b458b69">More...</a><br /></td></tr>
<tr class="separator:a725c88fdf395b0dba55c13794b458b69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af66d05b6e6cf774f58f5110b5976a329"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af66d05b6e6cf774f58f5110b5976a329"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#af66d05b6e6cf774f58f5110b5976a329">read</a> (const std::string &amp;buf)</td></tr>
<tr class="memdesc:af66d05b6e6cf774f58f5110b5976a329"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the data from a string of values of type T (e.g., "0 1 2 3" or "1/2 1/3 1/4" depending on what T is). Generally, the accepted input format is the same as that produced by the <a class="el" href="classExiv2_1_1ValueType.html#ab96e357d3c5dee6cab416cafa8da7e4a" title="Write the value to an output stream. You do not usually have to use this function; it is used for the...">write()</a> method. <br /></td></tr>
<tr class="separator:af66d05b6e6cf774f58f5110b5976a329"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a360e7872cfcb434d60bdc09dd243958e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a360e7872cfcb434d60bdc09dd243958e"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a360e7872cfcb434d60bdc09dd243958e">setDataArea</a> (const <a class="el" href="namespaceExiv2.html#a16f60a5bd4207fe155f6cf93a15efa72">byte</a> *buf, long len)</td></tr>
<tr class="memdesc:a360e7872cfcb434d60bdc09dd243958e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the data area. This method copies (clones) the buffer pointed to by buf. <br /></td></tr>
<tr class="separator:a360e7872cfcb434d60bdc09dd243958e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Accessors</div></td></tr>
<tr class="memitem:a5dc061e5ead43b510057d74820fa9d30"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5dc061e5ead43b510057d74820fa9d30"></a>
<a class="el" href="classExiv2_1_1Value.html#a0f62e585b82c97738858b743e60dff21">AutoPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><b>clone</b> () const </td></tr>
<tr class="separator:a5dc061e5ead43b510057d74820fa9d30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a106239c4587a27ce53b6a59b63d7b348"><td class="memItemLeft" align="right" valign="top">virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a106239c4587a27ce53b6a59b63d7b348">copy</a> (<a class="el" href="namespaceExiv2.html#a16f60a5bd4207fe155f6cf93a15efa72">byte</a> *buf, <a class="el" href="namespaceExiv2.html#a94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a> byteOrder) const </td></tr>
<tr class="memdesc:a106239c4587a27ce53b6a59b63d7b348"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write value to a data buffer.  <a href="#a106239c4587a27ce53b6a59b63d7b348">More...</a><br /></td></tr>
<tr class="separator:a106239c4587a27ce53b6a59b63d7b348"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9b4ae316a03e0406ba5b0ed0b448696"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9b4ae316a03e0406ba5b0ed0b448696"></a>
virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#ab9b4ae316a03e0406ba5b0ed0b448696">count</a> () const </td></tr>
<tr class="memdesc:ab9b4ae316a03e0406ba5b0ed0b448696"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of components of the value. <br /></td></tr>
<tr class="separator:ab9b4ae316a03e0406ba5b0ed0b448696"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb029a314e342525bf6a5e3132cd5848"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb029a314e342525bf6a5e3132cd5848"></a>
virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#adb029a314e342525bf6a5e3132cd5848">size</a> () const </td></tr>
<tr class="memdesc:adb029a314e342525bf6a5e3132cd5848"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the size of the value in bytes. <br /></td></tr>
<tr class="separator:adb029a314e342525bf6a5e3132cd5848"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab96e357d3c5dee6cab416cafa8da7e4a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab96e357d3c5dee6cab416cafa8da7e4a"></a>
virtual std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#ab96e357d3c5dee6cab416cafa8da7e4a">write</a> (std::ostream &amp;os) const </td></tr>
<tr class="memdesc:ab96e357d3c5dee6cab416cafa8da7e4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write the value to an output stream. You do not usually have to use this function; it is used for the implementation of the output operator for Value, <a class="el" href="namespaceExiv2.html#abe882054db13fc2f4f6f7e8e1261d982" title="Output operator for Value types. ">operator&lt;&lt;(std::ostream &amp;os, const Value &amp;value)</a>. <br /></td></tr>
<tr class="separator:ab96e357d3c5dee6cab416cafa8da7e4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad00be1b465398f9187296d1cd8462601"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad00be1b465398f9187296d1cd8462601"></a>
virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#ad00be1b465398f9187296d1cd8462601">toString</a> (long n) const </td></tr>
<tr class="memdesc:ad00be1b465398f9187296d1cd8462601"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the <em>n</em>-th component of the value as a string. The behaviour of this method may be undefined if there is no <em>n</em>-th component. <br /></td></tr>
<tr class="separator:ad00be1b465398f9187296d1cd8462601"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3dea33fa6bb1b9d3bdd1d0a05f0abad0"><td class="memItemLeft" align="right" valign="top">virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a3dea33fa6bb1b9d3bdd1d0a05f0abad0">toLong</a> (long n=0) const </td></tr>
<tr class="memdesc:a3dea33fa6bb1b9d3bdd1d0a05f0abad0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a long. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#a3dea33fa6bb1b9d3bdd1d0a05f0abad0">More...</a><br /></td></tr>
<tr class="separator:a3dea33fa6bb1b9d3bdd1d0a05f0abad0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a550fc71135aa8491fa7a90f0f682c94d"><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a550fc71135aa8491fa7a90f0f682c94d">toFloat</a> (long n=0) const </td></tr>
<tr class="memdesc:a550fc71135aa8491fa7a90f0f682c94d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a float. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#a550fc71135aa8491fa7a90f0f682c94d">More...</a><br /></td></tr>
<tr class="separator:a550fc71135aa8491fa7a90f0f682c94d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20632832dbb186f6ad287456c1b6b92b"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a20632832dbb186f6ad287456c1b6b92b">toRational</a> (long n=0) const </td></tr>
<tr class="memdesc:a20632832dbb186f6ad287456c1b6b92b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component.  <a href="#a20632832dbb186f6ad287456c1b6b92b">More...</a><br /></td></tr>
<tr class="separator:a20632832dbb186f6ad287456c1b6b92b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7441666b57cdcc6df0486516e80b8866"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7441666b57cdcc6df0486516e80b8866"></a>
virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#a7441666b57cdcc6df0486516e80b8866">sizeDataArea</a> () const </td></tr>
<tr class="memdesc:a7441666b57cdcc6df0486516e80b8866"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the size of the data area. <br /></td></tr>
<tr class="separator:a7441666b57cdcc6df0486516e80b8866"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab30d2836320975c3ad60312bf0a5133d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab30d2836320975c3ad60312bf0a5133d"></a>
virtual <a class="el" href="classExiv2_1_1DataBuf.html">DataBuf</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#ab30d2836320975c3ad60312bf0a5133d">dataArea</a> () const </td></tr>
<tr class="memdesc:ab30d2836320975c3ad60312bf0a5133d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a copy of the data area in a <a class="el" href="classExiv2_1_1DataBuf.html" title="Utility class containing a character array. All it does is to take care of memory allocation and dele...">DataBuf</a>. The caller owns this copy and <a class="el" href="classExiv2_1_1DataBuf.html" title="Utility class containing a character array. All it does is to take care of memory allocation and dele...">DataBuf</a> ensures that it will be deleted. <br /></td></tr>
<tr class="separator:ab30d2836320975c3ad60312bf0a5133d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classExiv2_1_1Value"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classExiv2_1_1Value')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classExiv2_1_1Value.html">Exiv2::Value</a></td></tr>
<tr class="memitem:ab475b1680c6fa36a092c4584f70a8027 inherit pub_methods_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab475b1680c6fa36a092c4584f70a8027"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#ab475b1680c6fa36a092c4584f70a8027">Value</a> (<a class="el" href="namespaceExiv2.html#a5153319711f35fe81cbc13f4b852450c">TypeId</a> <a class="el" href="classExiv2_1_1Value.html#a1a56299aad4e614c4f0225d97530c038">typeId</a>)</td></tr>
<tr class="memdesc:ab475b1680c6fa36a092c4584f70a8027 inherit pub_methods_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor, taking a type id to initialize the base class with. <br /></td></tr>
<tr class="separator:ab475b1680c6fa36a092c4584f70a8027 inherit pub_methods_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22a8e3314aad989671aedeee1c7ef375 inherit pub_methods_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a22a8e3314aad989671aedeee1c7ef375"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#a22a8e3314aad989671aedeee1c7ef375">~Value</a> ()</td></tr>
<tr class="memdesc:a22a8e3314aad989671aedeee1c7ef375 inherit pub_methods_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual destructor. <br /></td></tr>
<tr class="separator:a22a8e3314aad989671aedeee1c7ef375 inherit pub_methods_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a56299aad4e614c4f0225d97530c038 inherit pub_methods_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a56299aad4e614c4f0225d97530c038"></a>
<a class="el" href="namespaceExiv2.html#a5153319711f35fe81cbc13f4b852450c">TypeId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#a1a56299aad4e614c4f0225d97530c038">typeId</a> () const </td></tr>
<tr class="memdesc:a1a56299aad4e614c4f0225d97530c038 inherit pub_methods_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the type identifier (Exif data format type). <br /></td></tr>
<tr class="separator:a1a56299aad4e614c4f0225d97530c038 inherit pub_methods_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84db34d85bac0f5e159d67a1e10c7976 inherit pub_methods_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84db34d85bac0f5e159d67a1e10c7976"></a>
<a class="el" href="classExiv2_1_1Value.html#a0f62e585b82c97738858b743e60dff21">AutoPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#a84db34d85bac0f5e159d67a1e10c7976">clone</a> () const </td></tr>
<tr class="memdesc:a84db34d85bac0f5e159d67a1e10c7976 inherit pub_methods_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an auto-pointer to a copy of itself (deep copy). The caller owns this copy and the auto-pointer ensures that it will be deleted. <br /></td></tr>
<tr class="separator:a84db34d85bac0f5e159d67a1e10c7976 inherit pub_methods_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b07106aa570a506f4211c7bfa605fb0 inherit pub_methods_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b07106aa570a506f4211c7bfa605fb0"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#a0b07106aa570a506f4211c7bfa605fb0">toString</a> () const </td></tr>
<tr class="memdesc:a0b07106aa570a506f4211c7bfa605fb0 inherit pub_methods_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the value as a string. Implemented in terms of <a class="el" href="classExiv2_1_1Value.html#a2518f5ba09fc8c00785c57a119892c4c" title="Write the value to an output stream. You do not usually have to use this function; it is used for the...">write(std::ostream&amp; os) const </a>of the concrete class. <br /></td></tr>
<tr class="separator:a0b07106aa570a506f4211c7bfa605fb0 inherit pub_methods_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a161550b3ef31b3a14b1d75149ba9ba71 inherit pub_methods_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a161550b3ef31b3a14b1d75149ba9ba71"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#a161550b3ef31b3a14b1d75149ba9ba71">ok</a> () const </td></tr>
<tr class="memdesc:a161550b3ef31b3a14b1d75149ba9ba71 inherit pub_methods_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check the <em>ok</em> status indicator. After a to&lt;Type&gt; conversion, this indicator shows whether the conversion was successful. <br /></td></tr>
<tr class="separator:a161550b3ef31b3a14b1d75149ba9ba71 inherit pub_methods_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:ae5daa362d42b7b728cf795258650a35c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae5daa362d42b7b728cf795258650a35c"></a>
<a class="el" href="classExiv2_1_1ValueType.html#a88ed5f3e8f59a9cf00eee8c6027e9f87">ValueList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1ValueType.html#ae5daa362d42b7b728cf795258650a35c">value_</a></td></tr>
<tr class="memdesc:ae5daa362d42b7b728cf795258650a35c"><td class="mdescLeft">&#160;</td><td class="mdescRight">The container for all values. In your application, if you know what subclass of <a class="el" href="classExiv2_1_1Value.html" title="Common interface for all types of values used with metadata. ">Value</a> you're dealing with (and possibly the T) then you can access this STL container through the usual standard library functions. <br /></td></tr>
<tr class="separator:ae5daa362d42b7b728cf795258650a35c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classExiv2_1_1Value"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classExiv2_1_1Value')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classExiv2_1_1Value.html">Exiv2::Value</a></td></tr>
<tr class="memitem:a7a6c027316e3dec0f7e79430f104c137 inherit pub_static_methods_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classExiv2_1_1Value.html#a0f62e585b82c97738858b743e60dff21">AutoPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#a7a6c027316e3dec0f7e79430f104c137">create</a> (<a class="el" href="namespaceExiv2.html#a5153319711f35fe81cbc13f4b852450c">TypeId</a> <a class="el" href="classExiv2_1_1Value.html#a1a56299aad4e614c4f0225d97530c038">typeId</a>)</td></tr>
<tr class="memdesc:a7a6c027316e3dec0f7e79430f104c137 inherit pub_static_methods_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">A (simple) factory to create a <a class="el" href="classExiv2_1_1Value.html" title="Common interface for all types of values used with metadata. ">Value</a> type.  <a href="#a7a6c027316e3dec0f7e79430f104c137">More...</a><br /></td></tr>
<tr class="separator:a7a6c027316e3dec0f7e79430f104c137 inherit pub_static_methods_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classExiv2_1_1Value"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classExiv2_1_1Value')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classExiv2_1_1Value.html">Exiv2::Value</a></td></tr>
<tr class="memitem:aa2a9041cbd30d86260820b818cdf232e inherit pro_methods_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa2a9041cbd30d86260820b818cdf232e"></a>
<a class="el" href="classExiv2_1_1Value.html">Value</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#aa2a9041cbd30d86260820b818cdf232e">operator=</a> (const <a class="el" href="classExiv2_1_1Value.html">Value</a> &amp;rhs)</td></tr>
<tr class="memdesc:aa2a9041cbd30d86260820b818cdf232e inherit pro_methods_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator. Protected so that it can only be used by subclasses but not directly. <br /></td></tr>
<tr class="separator:aa2a9041cbd30d86260820b818cdf232e inherit pro_methods_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classExiv2_1_1Value"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classExiv2_1_1Value')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classExiv2_1_1Value.html">Exiv2::Value</a></td></tr>
<tr class="memitem:a4dc3a689b4bc1819290525cac491c1a8 inherit pro_attribs_classExiv2_1_1Value"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4dc3a689b4bc1819290525cac491c1a8"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Value.html#a4dc3a689b4bc1819290525cac491c1a8">ok_</a></td></tr>
<tr class="memdesc:a4dc3a689b4bc1819290525cac491c1a8 inherit pro_attribs_classExiv2_1_1Value"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates the status of the previous to&lt;Type&gt; conversion. <br /></td></tr>
<tr class="separator:a4dc3a689b4bc1819290525cac491c1a8 inherit pro_attribs_classExiv2_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename T&gt;<br />
class Exiv2::ValueType&lt; T &gt;</h3>

<p>Template for a Value of a basic type. This is used for unsigned and signed short, long and rationals. </p>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="addmoddel_8cpp-example.html#_a7">addmoddel.cpp</a>.</dd>
</dl></div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a106239c4587a27ce53b6a59b63d7b348"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; T &gt;::copy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceExiv2.html#a16f60a5bd4207fe155f6cf93a15efa72">byte</a> *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceExiv2.html#a94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a>&#160;</td>
          <td class="paramname"><em>byteOrder</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Write value to a data buffer. </p>
<p>The user must ensure that the buffer has enough memory. Otherwise the call results in undefined behaviour.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buf</td><td>Data buffer to write to. </td></tr>
    <tr><td class="paramname">byteOrder</td><td>Applicable byte order (little or big endian). </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bytes written. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a3bf4f9c2eda4f7850a390de98668ce15">Exiv2::Value</a>.</p>

<p>References <a class="el" href="namespaceExiv2.html#a59acfb133eebbee93865f1cc07106bca">Exiv2::toData()</a>.</p>

</div>
</div>
<a class="anchor" id="a725c88fdf395b0dba55c13794b458b69"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; T &gt;::read </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespaceExiv2.html#a16f60a5bd4207fe155f6cf93a15efa72">byte</a> *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&#160;</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#a94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a>&#160;</td>
          <td class="paramname"><em>byteOrder</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Read the value from a character buffer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buf</td><td>Pointer to the data buffer to read from </td></tr>
    <tr><td class="paramname">len</td><td>Number of bytes in the data buffer </td></tr>
    <tr><td class="paramname">byteOrder</td><td>Applicable byte order (little or big endian).</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 if successful. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#acc8870f802ebcdf9d4e081816ad8956e">Exiv2::Value</a>.</p>

<p>References <a class="el" href="classExiv2_1_1TypeInfo.html#abda613af50ccdddcad9a7bb75fcb2338">Exiv2::TypeInfo::typeSize()</a>.</p>

<p>Referenced by <a class="el" href="classExiv2_1_1ValueType.html#a191f1d8f864f169d40202e32dd59a0f2">Exiv2::ValueType&lt; T &gt;::ValueType()</a>.</p>

</div>
</div>
<a class="anchor" id="a550fc71135aa8491fa7a90f0f682c94d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; T &gt;::toFloat </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em> = <code>0</code></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a float. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a22d257caa6c1ffe6416ce02de7bd8c1c">Exiv2::Value</a>.</p>

</div>
</div>
<a class="anchor" id="add531529e862d86deca7eea4c76f5c4d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; <a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a> &gt;::toFloat </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a float. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a22d257caa6c1ffe6416ce02de7bd8c1c">Exiv2::Value</a>.</p>

</div>
</div>
<a class="anchor" id="a23f797186d8e93284a90bb9a9b215b1f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; <a class="el" href="namespaceExiv2.html#aedcaa9af0563cbd00a19b040d5aa7a70">URational</a> &gt;::toFloat </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a float. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a22d257caa6c1ffe6416ce02de7bd8c1c">Exiv2::Value</a>.</p>

</div>
</div>
<a class="anchor" id="a3dea33fa6bb1b9d3bdd1d0a05f0abad0"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; T &gt;::toLong </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em> = <code>0</code></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a long. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a4530a3fc3e2305cf994de5476f46f953">Exiv2::Value</a>.</p>

</div>
</div>
<a class="anchor" id="a647fe7bad8b9fd92d29f6d6ad16f28a0"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; <a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a> &gt;::toLong </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a long. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a4530a3fc3e2305cf994de5476f46f953">Exiv2::Value</a>.</p>

</div>
</div>
<a class="anchor" id="a1d7083471cf9e61c9c27785f2a70721d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; <a class="el" href="namespaceExiv2.html#aedcaa9af0563cbd00a19b040d5aa7a70">URational</a> &gt;::toLong </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a long. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a4530a3fc3e2305cf994de5476f46f953">Exiv2::Value</a>.</p>

</div>
</div>
<a class="anchor" id="a20632832dbb186f6ad287456c1b6b92b"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a> <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; T &gt;::toRational </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em> = <code>0</code></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a595a4cb549bec8c19d290ca3e95a2678">Exiv2::Value</a>.</p>

</div>
</div>
<a class="anchor" id="a517dba8c00607833f4e06194603c73c6"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a> <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; <a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a> &gt;::toRational </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a595a4cb549bec8c19d290ca3e95a2678">Exiv2::Value</a>.</p>

</div>
</div>
<a class="anchor" id="a81719ee8a0892aae5765d66d00b77dfc"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a> <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; <a class="el" href="namespaceExiv2.html#aedcaa9af0563cbd00a19b040d5aa7a70">URational</a> &gt;::toRational </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a595a4cb549bec8c19d290ca3e95a2678">Exiv2::Value</a>.</p>

</div>
</div>
<a class="anchor" id="aed8ff3edec29000ce609e1f756ff7742"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a> <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; float &gt;::toRational </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a595a4cb549bec8c19d290ca3e95a2678">Exiv2::Value</a>.</p>

<p>References <a class="el" href="namespaceExiv2.html#a6caa281728674d5138df8907be61c00e">Exiv2::floatToRationalCast()</a>.</p>

</div>
</div>
<a class="anchor" id="af1da49c1d89dcc35f2dd74a0c73e5e0d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceExiv2.html#a95756f3f7fa19103f83addf5fa088a30">Rational</a> <a class="el" href="classExiv2_1_1ValueType.html">Exiv2::ValueType</a>&lt; double &gt;::toRational </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert the <em>n</em>-th component of the value to a Rational. The behaviour of this method may be undefined if there is no <em>n</em>-th component. </p>
<dl class="section return"><dt>Returns</dt><dd>The converted value. </dd></dl>

<p>Implements <a class="el" href="classExiv2_1_1Value.html#a595a4cb549bec8c19d290ca3e95a2678">Exiv2::Value</a>.</p>

<p>References <a class="el" href="namespaceExiv2.html#a6caa281728674d5138df8907be61c00e">Exiv2::floatToRationalCast()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="value_8hpp.html">value.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Oct 26 2017 16:50:15 for Exiv2 by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>