Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 8ae7ec6813c5bf60cf058a6da524a0db > files > 72

id3lib-devel-3.8.3-25.fc15.i686.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"/>
<title>id3lib: ID3_Reader Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="id3lib.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">id3lib&#160;<span id="projectnumber">3.8.3</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <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>
    </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="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div>
<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-static-attribs">Static Public Attributes</a>  </div>
  <div class="headertitle">
<h1>ID3_Reader Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="ID3_Reader" -->
<p><code>#include &lt;<a class="el" href="reader_8h_source.html">reader.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for ID3_Reader:</div>
<div class="dyncontent">
 <div class="center">
  <img src="class_i_d3___reader.png" usemap="#ID3_Reader_map" alt=""/>
  <map id="ID3_Reader_map" name="ID3_Reader_map">
<area href="class_i_d3___i_stream_reader.html" alt="ID3_IStreamReader" shape="rect" coords="0,56,129,80"/>
<area href="class_i_d3___memory_reader.html" alt="ID3_MemoryReader" shape="rect" coords="139,56,268,80"/>
<area href="class_i_d3___i_f_stream_reader.html" alt="ID3_IFStreamReader" shape="rect" coords="0,112,129,136"/>
</map>
 </div></div>

<p><a href="class_i_d3___reader-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef uint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef uint8&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#abc80771e4ce81188082eaa8fa90a67e6">char_type</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef uint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef int32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a384b17f4e4d0a04cf482e54e2f6f54ef">off_type</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef int16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#aa8b2afbb909ee02b838cde53113d1d8b">int_type</a></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#af97817a1fa7ce41492d30df6b362b4c7">close</a> ()=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Close the reader.  <a href="#af97817a1fa7ce41492d30df6b362b4c7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#aeaf468ffe03c08731dcaf268fff3391b">getBeg</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the beginning position in the reader.  <a href="#aeaf468ffe03c08731dcaf268fff3391b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a5872b6813a652d831b770bfb7d65aec8">getEnd</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the ending position in the reader.  <a href="#a5872b6813a652d831b770bfb7d65aec8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a232935e138e44ea49e5a289fb8d7ac94">getCur</a> ()=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the current position in the reader.  <a href="#a232935e138e44ea49e5a289fb8d7ac94"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a1630f369cc7aa65a2279542715e9f483">setCur</a> (<a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a> pos)=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the value of the current position for reading.  <a href="#a1630f369cc7aa65a2279542715e9f483"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#aa8b2afbb909ee02b838cde53113d1d8b">int_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a36e43a57e3ff194ed6e0416c409fbed3">readChar</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read a single character and advance the internal position.  <a href="#a36e43a57e3ff194ed6e0416c409fbed3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#aa8b2afbb909ee02b838cde53113d1d8b">int_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#af2b67659b76a3f28dac16e3522b552cf">peekChar</a> ()=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the next character to be read without advancing the internal position.  <a href="#af2b67659b76a3f28dac16e3522b552cf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a271015a0481e80ca63bfea9ff9320a50">readChars</a> (<a class="el" href="class_i_d3___reader.html#abc80771e4ce81188082eaa8fa90a67e6">char_type</a> buf[], <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a> len)=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read up to <code>len</code> characters into buf and advance the internal position accordingly.  <a href="#a271015a0481e80ca63bfea9ff9320a50"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a01bcb484f8188bb8efe8624b8e19d6b9">readChars</a> (char buf[], <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a> len)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a12a8002132842435bae3d917bf6985e8">skipChars</a> (<a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a> len)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Skip up to <code>len</code> chars in the stream and advance the internal position accordingly.  <a href="#a12a8002132842435bae3d917bf6985e8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a8b516ba5335293c2f278c711161a3aec">remainingBytes</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a2d7e9a6e4c4c5f751035ea507c6cadb5">atEnd</a> ()</td></tr>
<tr><td colspan="2"><h2><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="class_i_d3___reader.html#aa8b2afbb909ee02b838cde53113d1d8b">int_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_d3___reader.html#a1bde46166e30a5413daa71053a75dc98">END_OF_READER</a> = -1</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock">
<p>Definition at line <a class="el" href="reader_8h_source.html#l00033">33</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>
</div><hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="abc80771e4ce81188082eaa8fa90a67e6"></a><!-- doxytag: member="ID3_Reader::char_type" ref="abc80771e4ce81188082eaa8fa90a67e6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint8 <a class="el" href="class_i_d3___reader.html#abc80771e4ce81188082eaa8fa90a67e6">ID3_Reader::char_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="reader_8h_source.html#l00037">37</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa8b2afbb909ee02b838cde53113d1d8b"></a><!-- doxytag: member="ID3_Reader::int_type" ref="aa8b2afbb909ee02b838cde53113d1d8b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int16 <a class="el" href="class_i_d3___reader.html#aa8b2afbb909ee02b838cde53113d1d8b">ID3_Reader::int_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="reader_8h_source.html#l00040">40</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="a384b17f4e4d0a04cf482e54e2f6f54ef"></a><!-- doxytag: member="ID3_Reader::off_type" ref="a384b17f4e4d0a04cf482e54e2f6f54ef" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int32 <a class="el" href="class_i_d3___reader.html#a384b17f4e4d0a04cf482e54e2f6f54ef">ID3_Reader::off_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="reader_8h_source.html#l00039">39</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="a83194ea4d4e04e81302b095e9aa2275a"></a><!-- doxytag: member="ID3_Reader::pos_type" ref="a83194ea4d4e04e81302b095e9aa2275a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32 <a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">ID3_Reader::pos_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="reader_8h_source.html#l00038">38</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab3891f70b4b079fe887e2eb707ca060e"></a><!-- doxytag: member="ID3_Reader::size_type" ref="ab3891f70b4b079fe887e2eb707ca060e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32 <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">ID3_Reader::size_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="reader_8h_source.html#l00036">36</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a2d7e9a6e4c4c5f751035ea507c6cadb5"></a><!-- doxytag: member="ID3_Reader::atEnd" ref="a2d7e9a6e4c4c5f751035ea507c6cadb5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool ID3_Reader::atEnd </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="reader_8h_source.html#l00125">125</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="af97817a1fa7ce41492d30df6b362b4c7"></a><!-- doxytag: member="ID3_Reader::close" ref="af97817a1fa7ce41492d30df6b362b4c7" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void ID3_Reader::close </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Close the reader. </p>
<p>Any further actions on the reader should fail. </p>

<p>Implemented in <a class="el" href="class_i_d3___i_stream_reader.html#aa9afe811196cc5f3195a04283508c0f4">ID3_IStreamReader</a>, <a class="el" href="class_i_d3___i_f_stream_reader.html#a26b103da4bed0649b360d20ac5c2717d">ID3_IFStreamReader</a>, and <a class="el" href="class_i_d3___memory_reader.html#ab9661770c682dcdbc4e03f396c12593d">ID3_MemoryReader</a>.</p>

</div>
</div>
<a class="anchor" id="aeaf468ffe03c08731dcaf268fff3391b"></a><!-- doxytag: member="ID3_Reader::getBeg" ref="aeaf468ffe03c08731dcaf268fff3391b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a> ID3_Reader::getBeg </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the beginning position in the reader. </p>

<p>Reimplemented in <a class="el" href="class_i_d3___i_stream_reader.html#a1c9f2552b6f25f2348dc04e4a283dc71">ID3_IStreamReader</a>, and <a class="el" href="class_i_d3___memory_reader.html#a99c80395434141c096be5dec661e8dca">ID3_MemoryReader</a>.</p>

<p>Definition at line <a class="el" href="reader_8h_source.html#l00048">48</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="a232935e138e44ea49e5a289fb8d7ac94"></a><!-- doxytag: member="ID3_Reader::getCur" ref="a232935e138e44ea49e5a289fb8d7ac94" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a> ID3_Reader::getCur </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the current position in the reader. </p>

<p>Implemented in <a class="el" href="class_i_d3___i_stream_reader.html#ac078db2a5d070087599ae5bf7417701e">ID3_IStreamReader</a>, and <a class="el" href="class_i_d3___memory_reader.html#a2c55aed7fecd258ca9978d1ff11c8cad">ID3_MemoryReader</a>.</p>

</div>
</div>
<a class="anchor" id="a5872b6813a652d831b770bfb7d65aec8"></a><!-- doxytag: member="ID3_Reader::getEnd" ref="a5872b6813a652d831b770bfb7d65aec8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a> ID3_Reader::getEnd </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the ending position in the reader. </p>

<p>Reimplemented in <a class="el" href="class_i_d3___i_stream_reader.html#a7ed8f110ac744ddb6b0a789b20df3548">ID3_IStreamReader</a>, and <a class="el" href="class_i_d3___memory_reader.html#a4f146a43b254394359d75646b603d0e2">ID3_MemoryReader</a>.</p>

<p>Definition at line <a class="el" href="reader_8h_source.html#l00051">51</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="af2b67659b76a3f28dac16e3522b552cf"></a><!-- doxytag: member="ID3_Reader::peekChar" ref="af2b67659b76a3f28dac16e3522b552cf" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#aa8b2afbb909ee02b838cde53113d1d8b">int_type</a> ID3_Reader::peekChar </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the next character to be read without advancing the internal position. </p>
<p>Returns END_OF_READER if there isn't a character to read. </p>

<p>Implemented in <a class="el" href="class_i_d3___i_stream_reader.html#a4f62667272a106f978414f57b0addbd7">ID3_IStreamReader</a>, and <a class="el" href="class_i_d3___memory_reader.html#a11f090c8191b9e96589e381fefb91fc4">ID3_MemoryReader</a>.</p>

</div>
</div>
<a class="anchor" id="a36e43a57e3ff194ed6e0416c409fbed3"></a><!-- doxytag: member="ID3_Reader::readChar" ref="a36e43a57e3ff194ed6e0416c409fbed3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#aa8b2afbb909ee02b838cde53113d1d8b">int_type</a> ID3_Reader::readChar </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read a single character and advance the internal position. </p>
<p>Note that the interal position may advance more than one byte for a single character read. Returns END_OF_READER if there isn't a character to read. </p>

<p>Definition at line <a class="el" href="reader_8h_source.html#l00065">65</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="a271015a0481e80ca63bfea9ff9320a50"></a><!-- doxytag: member="ID3_Reader::readChars" ref="a271015a0481e80ca63bfea9ff9320a50" args="(char_type buf[], size_type len)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a> ID3_Reader::readChars </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_i_d3___reader.html#abc80771e4ce81188082eaa8fa90a67e6">char_type</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="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a>&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read up to <code>len</code> characters into buf and advance the internal position accordingly. </p>
<p>Returns the number of characters read into buf. Note that the value returned may be less than the number of bytes that the internal position advances, due to multi-byte characters. </p>

<p>Implemented in <a class="el" href="class_i_d3___i_stream_reader.html#abb918ea450bc65552e7e2f0009aaf03f">ID3_IStreamReader</a>, and <a class="el" href="class_i_d3___memory_reader.html#a780406b321e721faefd3b84d35491f40">ID3_MemoryReader</a>.</p>

</div>
</div>
<a class="anchor" id="a01bcb484f8188bb8efe8624b8e19d6b9"></a><!-- doxytag: member="ID3_Reader::readChars" ref="a01bcb484f8188bb8efe8624b8e19d6b9" args="(char buf[], size_type len)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a> ID3_Reader::readChars </td>
          <td>(</td>
          <td class="paramtype">char&#160;</td>
          <td class="paramname"><em>buf</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a>&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented in <a class="el" href="class_i_d3___i_stream_reader.html#a4a55e63a025be2476b882bef42681b9e">ID3_IStreamReader</a>, and <a class="el" href="class_i_d3___memory_reader.html#a6a811816f23cb5b84438ee364fecb7ae">ID3_MemoryReader</a>.</p>

<p>Definition at line <a class="el" href="reader_8h_source.html#l00088">88</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8b516ba5335293c2f278c711161a3aec"></a><!-- doxytag: member="ID3_Reader::remainingBytes" ref="a8b516ba5335293c2f278c711161a3aec" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a> ID3_Reader::remainingBytes </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="reader_8h_source.html#l00109">109</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1630f369cc7aa65a2279542715e9f483"></a><!-- doxytag: member="ID3_Reader::setCur" ref="a1630f369cc7aa65a2279542715e9f483" args="(pos_type pos)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a> ID3_Reader::setCur </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_i_d3___reader.html#a83194ea4d4e04e81302b095e9aa2275a">pos_type</a>&#160;</td>
          <td class="paramname"><em>pos</em></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the value of the current position for reading. </p>

<p>Implemented in <a class="el" href="class_i_d3___i_stream_reader.html#acf335334973e5a654125fcebdc129844">ID3_IStreamReader</a>, and <a class="el" href="class_i_d3___memory_reader.html#aa36a396beb22ffa57feac4d14631f3e4">ID3_MemoryReader</a>.</p>

</div>
</div>
<a class="anchor" id="a12a8002132842435bae3d917bf6985e8"></a><!-- doxytag: member="ID3_Reader::skipChars" ref="a12a8002132842435bae3d917bf6985e8" args="(size_type len)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a> ID3_Reader::skipChars </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_i_d3___reader.html#ab3891f70b4b079fe887e2eb707ca060e">size_type</a>&#160;</td>
          <td class="paramname"><em>len</em></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Skip up to <code>len</code> chars in the stream and advance the internal position accordingly. </p>
<p>Returns the number of characters actually skipped (may be less than requested). </p>

<p>Definition at line <a class="el" href="reader_8h_source.html#l00097">97</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a1bde46166e30a5413daa71053a75dc98"></a><!-- doxytag: member="ID3_Reader::END_OF_READER" ref="a1bde46166e30a5413daa71053a75dc98" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_i_d3___reader.html#aa8b2afbb909ee02b838cde53113d1d8b">ID3_Reader::int_type</a> <a class="el" href="class_i_d3___reader.html#a1bde46166e30a5413daa71053a75dc98">ID3_Reader::END_OF_READER</a> = -1<code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="reader_8h_source.html#l00041">41</a> of file <a class="el" href="reader_8h_source.html">reader.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>include/id3/<a class="el" href="reader_8h_source.html">reader.h</a></li>
<li>src/<a class="el" href="io_8cpp_source.html">io.cpp</a></li>
</ul>
</div>
<hr size="1"><address style="text-align: right;"><small>
Generated for id3lib by&nbsp;<a href="http://www.doxygen.org/
index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a>
1.7.3</small></address></body></html>