Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 964aecd60fac62d5dc5479d22a0c53ef > files > 64

libmusicbrainz3-devel-3.0.3-2.fc14.x86_64.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>libmusicbrainz3: MusicBrainz::Disc Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</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 class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath">
    <ul>
      <li><a class="el" href="namespace_music_brainz.html">MusicBrainz</a>      </li>
      <li><a class="el" href="class_music_brainz_1_1_disc.html">MusicBrainz::Disc</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>  </div>
  <div class="headertitle">
<h1>MusicBrainz::Disc Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="MusicBrainz::Disc" -->
<p>Represents an Audio CD.  
<a href="#_details">More...</a></p>

<p><a href="class_music_brainz_1_1_disc-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 std::pair&lt; int, int &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#a0bf7a0d0de556f38cc7c779c973dfd19">Track</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; <a class="el" href="class_music_brainz_1_1_disc.html#a0bf7a0d0de556f38cc7c779c973dfd19">Disc::Track</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#a41fb8d3fda2c9f4566d3adf195796c2f">TrackList</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">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#aa015cf7aaf46f96b57fe3343ec28e810">Disc</a> (const std::string &amp;id=std::string())</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#aa015cf7aaf46f96b57fe3343ec28e810"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#aa716bf2c068fa1f00835a7a37de8a761">~Disc</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor.  <a href="#aa716bf2c068fa1f00835a7a37de8a761"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#a9e0d3e98759d67bd33a670664c50dbdd">getId</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the <a class="el" href="namespace_music_brainz.html">MusicBrainz</a> DiscID.  <a href="#a9e0d3e98759d67bd33a670664c50dbdd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#af735aefed26077f68b3c7f911f33d1ca">setId</a> (const std::string &amp;value)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the <a class="el" href="namespace_music_brainz.html">MusicBrainz</a> DiscId.  <a href="#af735aefed26077f68b3c7f911f33d1ca"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#a4acb70583e39670bbeb15073f81d86c5">getSectors</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the length of the disc in sectors.  <a href="#a4acb70583e39670bbeb15073f81d86c5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#a4cc07b02f6b0283baae6daa7db59b77c">setSectors</a> (const int sectors)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the length of the disc in sectors.  <a href="#a4cc07b02f6b0283baae6daa7db59b77c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#a1c6e828d77b37a3dae350fdf477b8f46">getFirstTrackNum</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of the first track on this disc.  <a href="#a1c6e828d77b37a3dae350fdf477b8f46"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#ab8078e04ee2894edc6369587737aec9b">setFirstTrackNum</a> (const int trackNum)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the number of the first track on this disc.  <a href="#ab8078e04ee2894edc6369587737aec9b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#a9b826b03b8ceffbb6c773d9cc6c4de46">getLastTrackNum</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of the last track on this disc.  <a href="#a9b826b03b8ceffbb6c773d9cc6c4de46"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#ac04c1ee90ce0777ed73bc8746d2deb45">setLastTrackNum</a> (const int trackNum)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the number of the last track on this disc.  <a href="#ac04c1ee90ce0777ed73bc8746d2deb45"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_music_brainz_1_1_disc.html#a41fb8d3fda2c9f4566d3adf195796c2f">Disc::TrackList</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#ab740088c05af2c136e0f139409099e50">getTracks</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the sector offset and length of this disc.  <a href="#ab740088c05af2c136e0f139409099e50"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_disc.html#ab122857ae2e58c4bf87a1c8d80e9532f">addTrack</a> (<a class="el" href="class_music_brainz_1_1_disc.html#a0bf7a0d0de556f38cc7c779c973dfd19">Disc::Track</a> track)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a track to the list.  <a href="#ab122857ae2e58c4bf87a1c8d80e9532f"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Represents an Audio CD. </p>
<p>This class represents an Audio CD. A disc can have an ID (the <a class="el" href="namespace_music_brainz.html">MusicBrainz</a> DiscID), which is calculated from the CD's table of contents (TOC). There may also be data from the TOC like the length of the disc in sectors, as well as position and length of the tracks.</p>
<p>Note that different TOCs, maybe due to different pressings, lead to different DiscIDs. Conversely, if two different discs have the same TOC, they also have the same DiscID (which is unlikely but not impossible). DiscIDs are always 28 characters long and look like this: <em>'J68I_CDcUFdCRCIbHSEbTBCbooA-'</em>. Sometimes they are also referred to as CDIndex IDs.</p>
<p>The <a class="el" href="namespace_music_brainz.html">MusicBrainz</a> web service (<a class="el" href="class_music_brainz_1_1_web_service.html" title="An interface to the MusicBrainz XML web service via HTTP.">WebService</a>) only returns the DiscID and the number of sectors. The DiscID calculation function readDisc, however, can retrieve the other attributes of <a class="el" href="class_music_brainz_1_1_disc.html" title="Represents an Audio CD.">Disc</a> from an Audio CD in the disc drive. </p>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a0bf7a0d0de556f38cc7c779c973dfd19"></a><!-- doxytag: member="MusicBrainz::Disc::Track" ref="a0bf7a0d0de556f38cc7c779c973dfd19" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::pair&lt;int, int&gt; <a class="el" href="class_music_brainz_1_1_disc.html#a0bf7a0d0de556f38cc7c779c973dfd19">MusicBrainz::Disc::Track</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a41fb8d3fda2c9f4566d3adf195796c2f"></a><!-- doxytag: member="MusicBrainz::Disc::TrackList" ref="a41fb8d3fda2c9f4566d3adf195796c2f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::vector&lt;<a class="el" href="class_music_brainz_1_1_disc.html#a0bf7a0d0de556f38cc7c779c973dfd19">Disc::Track</a>&gt; <a class="el" href="class_music_brainz_1_1_disc.html#a41fb8d3fda2c9f4566d3adf195796c2f">MusicBrainz::Disc::TrackList</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="aa015cf7aaf46f96b57fe3343ec28e810"></a><!-- doxytag: member="MusicBrainz::Disc::Disc" ref="aa015cf7aaf46f96b57fe3343ec28e810" args="(const std::string &amp;id=std::string())" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">MusicBrainz::Disc::Disc </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>id</em> = <code>std::string()</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>id</em>&nbsp;</td><td>a string containing a 28-character DiscID </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa716bf2c068fa1f00835a7a37de8a761"></a><!-- doxytag: member="MusicBrainz::Disc::~Disc" ref="aa716bf2c068fa1f00835a7a37de8a761" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual MusicBrainz::Disc::~Disc </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructor. </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ab122857ae2e58c4bf87a1c8d80e9532f"></a><!-- doxytag: member="MusicBrainz::Disc::addTrack" ref="ab122857ae2e58c4bf87a1c8d80e9532f" args="(Disc::Track track)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void MusicBrainz::Disc::addTrack </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_music_brainz_1_1_disc.html#a0bf7a0d0de556f38cc7c779c973dfd19">Disc::Track</a>&nbsp;</td>
          <td class="paramname"> <em>track</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a track to the list. </p>
<p>This method adds an (offset, length) pair to the list of tracks. The leadout track must <em>not</em> be added. The total length of the disc can be set using setSectors.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>track</em>&nbsp;</td><td>an (offset, length) pair (values are ints)</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_music_brainz_1_1_disc.html#ab740088c05af2c136e0f139409099e50" title="Returns the sector offset and length of this disc.">getTracks</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a1c6e828d77b37a3dae350fdf477b8f46"></a><!-- doxytag: member="MusicBrainz::Disc::getFirstTrackNum" ref="a1c6e828d77b37a3dae350fdf477b8f46" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int MusicBrainz::Disc::getFirstTrackNum </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the number of the first track on this disc. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>an int containing the track number </dd></dl>

</div>
</div>
<a class="anchor" id="a9e0d3e98759d67bd33a670664c50dbdd"></a><!-- doxytag: member="MusicBrainz::Disc::getId" ref="a9e0d3e98759d67bd33a670664c50dbdd" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string MusicBrainz::Disc::getId </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the <a class="el" href="namespace_music_brainz.html">MusicBrainz</a> DiscID. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a string containing a 28-character DiscID </dd></dl>

</div>
</div>
<a class="anchor" id="a9b826b03b8ceffbb6c773d9cc6c4de46"></a><!-- doxytag: member="MusicBrainz::Disc::getLastTrackNum" ref="a9b826b03b8ceffbb6c773d9cc6c4de46" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int MusicBrainz::Disc::getLastTrackNum </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the number of the last track on this disc. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>an int containing the track number </dd></dl>

</div>
</div>
<a class="anchor" id="a4acb70583e39670bbeb15073f81d86c5"></a><!-- doxytag: member="MusicBrainz::Disc::getSectors" ref="a4acb70583e39670bbeb15073f81d86c5" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int MusicBrainz::Disc::getSectors </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the length of the disc in sectors. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the length in sectors as an integer </dd></dl>

</div>
</div>
<a class="anchor" id="ab740088c05af2c136e0f139409099e50"></a><!-- doxytag: member="MusicBrainz::Disc::getTracks" ref="ab740088c05af2c136e0f139409099e50" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_music_brainz_1_1_disc.html#a41fb8d3fda2c9f4566d3adf195796c2f">Disc::TrackList</a>&amp; MusicBrainz::Disc::getTracks </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the sector offset and length of this disc. </p>
<p>This method returns a list of tuples containing the track offset and length in sectors for all tracks on this disc. The track offset is measured from the beginning of the disc, the length is relative to the track's offset. Note that the leadout track is <em>not</em> included.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a vector of (offset, length) pairs (values are ints) </dd></dl>

</div>
</div>
<a class="anchor" id="ab8078e04ee2894edc6369587737aec9b"></a><!-- doxytag: member="MusicBrainz::Disc::setFirstTrackNum" ref="ab8078e04ee2894edc6369587737aec9b" args="(const int trackNum)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void MusicBrainz::Disc::setFirstTrackNum </td>
          <td>(</td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>trackNum</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the number of the first track on this disc. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>trackNum</em>&nbsp;</td><td>an int containing the track number </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="af735aefed26077f68b3c7f911f33d1ca"></a><!-- doxytag: member="MusicBrainz::Disc::setId" ref="af735aefed26077f68b3c7f911f33d1ca" args="(const std::string &amp;value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void MusicBrainz::Disc::setId </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>value</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the <a class="el" href="namespace_music_brainz.html">MusicBrainz</a> DiscId. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>a string containing a 28-character DiscID </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac04c1ee90ce0777ed73bc8746d2deb45"></a><!-- doxytag: member="MusicBrainz::Disc::setLastTrackNum" ref="ac04c1ee90ce0777ed73bc8746d2deb45" args="(const int trackNum)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void MusicBrainz::Disc::setLastTrackNum </td>
          <td>(</td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>trackNum</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the number of the last track on this disc. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>trackNum</em>&nbsp;</td><td>an int containing the track number </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a4cc07b02f6b0283baae6daa7db59b77c"></a><!-- doxytag: member="MusicBrainz::Disc::setSectors" ref="a4cc07b02f6b0283baae6daa7db59b77c" args="(const int sectors)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void MusicBrainz::Disc::setSectors </td>
          <td>(</td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>sectors</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the length of the disc in sectors. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>sectors</em>&nbsp;</td><td>the length in sectors as an integer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>Generated by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
</body>
</html>