<!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::Relation Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/search.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript"> $(document).ready(initResizable); </script> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body onload='searchBox.OnSelectItem(0);'> <!-- Generated by Doxygen 1.7.3 --> <script type="text/javascript"><!-- var searchBox = new SearchBox("searchBox", "search",false,'Search'); --></script> <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">libmusicbrainz3 <span id="projectnumber">3.0.3</span></div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related 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> <li id="searchli"> <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 List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> </div> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> initNavTree('class_music_brainz_1_1_relation.html',''); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-static-attribs">Static Public Attributes</a> </div> <div class="headertitle"> <h1>MusicBrainz::Relation Class Reference</h1> </div> </div> <div class="contents"> <!-- doxytag: class="MusicBrainz::Relation" --> <p>Represents a relation between two Entities. <a href="#_details">More...</a></p> <p><a href="class_music_brainz_1_1_relation-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">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91">Direction</a> { <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a8c9f7694c1545b412ba7ecc7d061b5b8">DIR_BOTH</a>, <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91afbc7dd63a90c956a683b0ab1a953cc05">DIR_FORWARD</a>, <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a57cb2c448ead3b9aa7f3d1752cb3a943">DIR_BACKWARD</a> }</td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef std::vector< std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#aaa2b351e922bd14dcee042bc89f9062a">Attributes</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A vector of strings (attributes). <a href="#aaa2b351e922bd14dcee042bc89f9062a"></a><br/></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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#af0e18e9ca6318f1117143f044d50331a">Relation</a> (const std::string &relationType=std::string(), const std::string &targetType=std::string(), const std::string &targetId=std::string(), const <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91">Direction</a> direction=DIR_BOTH, const <a class="el" href="class_music_brainz_1_1_relation.html#aaa2b351e922bd14dcee042bc89f9062a">Attributes</a> &attributes=<a class="el" href="class_music_brainz_1_1_relation.html#aaa2b351e922bd14dcee042bc89f9062a">Attributes</a>(), const std::string &beginDate=std::string(), const std::string &endDate=std::string(), <a class="el" href="class_music_brainz_1_1_entity.html">Entity</a> *target=NULL)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#af0e18e9ca6318f1117143f044d50331a"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a802340e32407c9c81ad6838f9be08df4">~Relation</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#a802340e32407c9c81ad6838f9be08df4"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#aa646006e4de591243fb2762aa9ff1922">getType</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns this relation's type. <a href="#aa646006e4de591243fb2762aa9ff1922"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a445ebced9605e4143bdfd53157f0b2c0">setType</a> (const std::string &type)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets this relation's type. <a href="#a445ebced9605e4143bdfd53157f0b2c0"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#ae76824dbe1ab8e53584a4dd527f657f5">getTargetId</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the target's ID. <a href="#ae76824dbe1ab8e53584a4dd527f657f5"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#aa27dd34b725b04d4f33919c680f49609">setTargetId</a> (const std::string &targetId)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets the target's ID. <a href="#aa27dd34b725b04d4f33919c680f49609"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a59112553c9fb634d0d4cc2486c268a85">getTargetType</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the target's type. <a href="#a59112553c9fb634d0d4cc2486c268a85"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#abdfdeccfe188d97b756c72a971af60b5">setTargetType</a> (const std::string &targetType)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets the target's type. <a href="#abdfdeccfe188d97b756c72a971af60b5"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a357ce9560efaab45a29232d3c9565109">getBeginDate</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the begin date. <a href="#a357ce9560efaab45a29232d3c9565109"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a2c84996732ecc478208ad382e4e5cb97">setBeginDate</a> (const std::string &dateStr)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets the begin date. <a href="#a2c84996732ecc478208ad382e4e5cb97"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a825164026a7b46917da17167ee095ef3">getEndDate</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the end date. <a href="#a825164026a7b46917da17167ee095ef3"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a3f45d98b6541544efa643fa3f5ba7fb0">setEndDate</a> (const std::string &dateStr)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets the end date. <a href="#a3f45d98b6541544efa643fa3f5ba7fb0"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91">Direction</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#abb87b2ea8ec3e47bab7f3007b45471f7">getDirection</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the reading direction. <a href="#abb87b2ea8ec3e47bab7f3007b45471f7"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#ac172d14b7fab0a3757d17dd52bc261be">setDirection</a> (const <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91">Direction</a> direction)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets the reading direction. <a href="#ac172d14b7fab0a3757d17dd52bc261be"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_music_brainz_1_1_relation.html#aaa2b351e922bd14dcee042bc89f9062a">Attributes</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a6333abf6dcdd33f572d591e2f1d8ae02">getAttributes</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a list of attributes describing this relation. <a href="#a6333abf6dcdd33f572d591e2f1d8ae02"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#ac12f6baaf722a09aad5aee7fa2c6cc1b">getNumAttributes</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns number of attributes. <a href="#ac12f6baaf722a09aad5aee7fa2c6cc1b"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a4444d4d0792f70d5f765bc24813252bc">getAttribute</a> (int index) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns an attribute specified by index. <a href="#a4444d4d0792f70d5f765bc24813252bc"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a26ffcd22f194b9e8b3389c4dc91f767f">addAttribute</a> (const std::string &attribute)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Adds an attribute to the list. <a href="#a26ffcd22f194b9e8b3389c4dc91f767f"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_music_brainz_1_1_entity.html">Entity</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#aef07a5748197446bc5712d0fc9192f2d">getTarget</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns this relation's target object. <a href="#aef07a5748197446bc5712d0fc9192f2d"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#aa6d2f3549f8199d401e60fd3707305a0">setTarget</a> (<a class="el" href="class_music_brainz_1_1_entity.html">Entity</a> *target)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets this relation's target object. <a href="#aa6d2f3549f8199d401e60fd3707305a0"></a><br/></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 std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a856e330d4428a66839936de5846ec71c">TO_ARTIST</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Identifies relations linking to an artist. <a href="#a856e330d4428a66839936de5846ec71c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#adc296c0eecbb2576227bd642e51f01c8">TO_RELEASE</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Identifies relations linking to a release. <a href="#adc296c0eecbb2576227bd642e51f01c8"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#a32aec0cce1d9a4f29028e1a09df59677">TO_TRACK</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Identifies relations linking to a track. <a href="#a32aec0cce1d9a4f29028e1a09df59677"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_music_brainz_1_1_relation.html#ad95e52b195391ff45289b3e42f05e456">TO_URL</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Identifies relations linking to an URL. <a href="#ad95e52b195391ff45289b3e42f05e456"></a><br/></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Represents a relation between two Entities. </p> <p>There may be an arbitrary number of relations between all first class objects in <a class="el" href="namespace_music_brainz.html">MusicBrainz</a>. The <a class="el" href="class_music_brainz_1_1_relation.html" title="Represents a relation between two Entities.">Relation</a> itself has multiple attributes, which may or may not be used for a given relation type.</p> <p>Note that a <a class="el" href="class_music_brainz_1_1_relation.html" title="Represents a relation between two Entities.">Relation</a> object only contains the target but not the source end of the relation. </p> </div><hr/><h2>Member Typedef Documentation</h2> <a class="anchor" id="aaa2b351e922bd14dcee042bc89f9062a"></a><!-- doxytag: member="MusicBrainz::Relation::Attributes" ref="aaa2b351e922bd14dcee042bc89f9062a" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef std::vector<std::string> <a class="el" href="class_music_brainz_1_1_relation.html#aaa2b351e922bd14dcee042bc89f9062a">MusicBrainz::Relation::Attributes</a></td> </tr> </table> </div> <div class="memdoc"> <p>A vector of strings (attributes). </p> </div> </div> <hr/><h2>Member Enumeration Documentation</h2> <a class="anchor" id="a5d535f29c38a94bd36ef6fabed97fe91"></a><!-- doxytag: member="MusicBrainz::Relation::Direction" ref="a5d535f29c38a94bd36ef6fabed97fe91" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91">MusicBrainz::Relation::Direction</a></td> </tr> </table> </div> <div class="memdoc"> <dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><em><a class="anchor" id="a5d535f29c38a94bd36ef6fabed97fe91a8c9f7694c1545b412ba7ecc7d061b5b8"></a><!-- doxytag: member="DIR_BOTH" ref="a5d535f29c38a94bd36ef6fabed97fe91a8c9f7694c1545b412ba7ecc7d061b5b8" args="" -->DIR_BOTH</em> </td><td> <p><a class="el" href="class_music_brainz_1_1_relation.html" title="Represents a relation between two Entities.">Relation</a> reading direction doesn't matter. </p> </td></tr> <tr><td valign="top"><em><a class="anchor" id="a5d535f29c38a94bd36ef6fabed97fe91afbc7dd63a90c956a683b0ab1a953cc05"></a><!-- doxytag: member="DIR_FORWARD" ref="a5d535f29c38a94bd36ef6fabed97fe91afbc7dd63a90c956a683b0ab1a953cc05" args="" -->DIR_FORWARD</em> </td><td> <p><a class="el" href="class_music_brainz_1_1_relation.html" title="Represents a relation between two Entities.">Relation</a> reading direction is from source to target. </p> </td></tr> <tr><td valign="top"><em><a class="anchor" id="a5d535f29c38a94bd36ef6fabed97fe91a57cb2c448ead3b9aa7f3d1752cb3a943"></a><!-- doxytag: member="DIR_BACKWARD" ref="a5d535f29c38a94bd36ef6fabed97fe91a57cb2c448ead3b9aa7f3d1752cb3a943" args="" -->DIR_BACKWARD</em> </td><td> <p><a class="el" href="class_music_brainz_1_1_relation.html" title="Represents a relation between two Entities.">Relation</a> reading direction is from target to source. </p> </td></tr> </table> </dd> </dl> </div> </div> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="af0e18e9ca6318f1117143f044d50331a"></a><!-- doxytag: member="MusicBrainz::Relation::Relation" ref="af0e18e9ca6318f1117143f044d50331a" args="(const std::string &relationType=std::string(), const std::string &targetType=std::string(), const std::string &targetId=std::string(), const Direction direction=DIR_BOTH, const Attributes &attributes=Attributes(), const std::string &beginDate=std::string(), const std::string &endDate=std::string(), Entity *target=NULL)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">MusicBrainz::Relation::Relation </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>relationType</em> = <code>std::string()</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>targetType</em> = <code>std::string()</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>targetId</em> = <code>std::string()</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91">Direction</a> </td> <td class="paramname"><em>direction</em> = <code>DIR_BOTH</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_music_brainz_1_1_relation.html#aaa2b351e922bd14dcee042bc89f9062a">Attributes</a> & </td> <td class="paramname"><em>attributes</em> = <code><a class="el" href="class_music_brainz_1_1_relation.html#aaa2b351e922bd14dcee042bc89f9062a">Attributes</a>()</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>beginDate</em> = <code>std::string()</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>endDate</em> = <code>std::string()</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="class_music_brainz_1_1_entity.html">Entity</a> * </td> <td class="paramname"><em>target</em> = <code>NULL</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">relationType</td><td>a string containing an absolute URI </td></tr> <tr><td class="paramname">targetType</td><td>a string containing an absolute URI </td></tr> <tr><td class="paramname">targetId</td><td>a string containing an absolute URI </td></tr> <tr><td class="paramname">direction</td><td>one of <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91afbc7dd63a90c956a683b0ab1a953cc05" title="Relation reading direction is from source to target.">Relation::DIR_FORWARD</a>, <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a57cb2c448ead3b9aa7f3d1752cb3a943" title="Relation reading direction is from target to source.">Relation::DIR_BACKWARD</a>, or <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a8c9f7694c1545b412ba7ecc7d061b5b8" title="Relation reading direction doesn't matter.">Relation::DIR_BOTH</a> </td></tr> <tr><td class="paramname">attributes</td><td>a list of strings containing absolute URIs </td></tr> <tr><td class="paramname">beginDate</td><td>a string containing a date </td></tr> <tr><td class="paramname">endDate</td><td>a string containing a date </td></tr> <tr><td class="paramname">target</td><td>an instance of a subclass of <a class="el" href="class_music_brainz_1_1_entity.html" title="A first-level MusicBrainz class.">Entity</a>, or NULL </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a802340e32407c9c81ad6838f9be08df4"></a><!-- doxytag: member="MusicBrainz::Relation::~Relation" ref="a802340e32407c9c81ad6838f9be08df4" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual MusicBrainz::Relation::~Relation </td> <td>(</td> <td class="paramname"></td><td>)</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="a26ffcd22f194b9e8b3389c4dc91f767f"></a><!-- doxytag: member="MusicBrainz::Relation::addAttribute" ref="a26ffcd22f194b9e8b3389c4dc91f767f" args="(const std::string &attribute)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void MusicBrainz::Relation::addAttribute </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>attribute</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Adds an attribute to the list. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">attribute</td><td>a string containing an absolute URI </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a4444d4d0792f70d5f765bc24813252bc"></a><!-- doxytag: member="MusicBrainz::Relation::getAttribute" ref="a4444d4d0792f70d5f765bc24813252bc" args="(int index) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string MusicBrainz::Relation::getAttribute </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>index</em></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns an attribute specified by index. </p> <p>This is equivalent to <code><a class="el" href="class_music_brainz_1_1_relation.html#a6333abf6dcdd33f572d591e2f1d8ae02" title="Returns a list of attributes describing this relation.">getAttributes()</a></code>[index]</p> <dl class="return"><dt><b>Returns:</b></dt><dd>a string containing the attribute</dd></dl> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_music_brainz_1_1_relation.html#a6333abf6dcdd33f572d591e2f1d8ae02" title="Returns a list of attributes describing this relation.">getAttributes</a> </dd></dl> </div> </div> <a class="anchor" id="a6333abf6dcdd33f572d591e2f1d8ae02"></a><!-- doxytag: member="MusicBrainz::Relation::getAttributes" ref="a6333abf6dcdd33f572d591e2f1d8ae02" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_music_brainz_1_1_relation.html#aaa2b351e922bd14dcee042bc89f9062a">Attributes</a>& MusicBrainz::Relation::getAttributes </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Returns a list of attributes describing this relation. </p> <p>The attributes permitted depend on the relation type.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>a list of strings containing absolute URIs </dd></dl> </div> </div> <a class="anchor" id="a357ce9560efaab45a29232d3c9565109"></a><!-- doxytag: member="MusicBrainz::Relation::getBeginDate" ref="a357ce9560efaab45a29232d3c9565109" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string MusicBrainz::Relation::getBeginDate </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns the begin date. </p> <p>The definition depends on the relation's type. It may for example be the day of a marriage or the year an artist joined a band. For other relation types this may be undefined.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>a string containing a date </dd></dl> </div> </div> <a class="anchor" id="abb87b2ea8ec3e47bab7f3007b45471f7"></a><!-- doxytag: member="MusicBrainz::Relation::getDirection" ref="abb87b2ea8ec3e47bab7f3007b45471f7" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91">Direction</a> MusicBrainz::Relation::getDirection </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns the reading direction. </p> <p>The direction may be one of <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91afbc7dd63a90c956a683b0ab1a953cc05" title="Relation reading direction is from source to target.">Relation::DIR_FORWARD</a>, <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a57cb2c448ead3b9aa7f3d1752cb3a943" title="Relation reading direction is from target to source.">Relation::DIR_BACKWARD</a>, or <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a8c9f7694c1545b412ba7ecc7d061b5b8" title="Relation reading direction doesn't matter.">Relation::DIR_BOTH</a>, depending on how the relation should be read. For example, if direction is <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91afbc7dd63a90c956a683b0ab1a953cc05" title="Relation reading direction is from source to target.">Relation::DIR_FORWARD</a> for a cover relation, it is read as "X is a cover of Y". Some relations are bidirectional, like marriages. In these cases, the direction is <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a8c9f7694c1545b412ba7ecc7d061b5b8" title="Relation reading direction doesn't matter.">Relation::DIR_BOTH</a>.</p> <dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91afbc7dd63a90c956a683b0ab1a953cc05" title="Relation reading direction is from source to target.">Relation::DIR_FORWARD</a>, <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a57cb2c448ead3b9aa7f3d1752cb3a943" title="Relation reading direction is from target to source.">Relation::DIR_BACKWARD</a>, or <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a8c9f7694c1545b412ba7ecc7d061b5b8" title="Relation reading direction doesn't matter.">Relation::DIR_BOTH</a> </dd></dl> </div> </div> <a class="anchor" id="a825164026a7b46917da17167ee095ef3"></a><!-- doxytag: member="MusicBrainz::Relation::getEndDate" ref="a825164026a7b46917da17167ee095ef3" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string MusicBrainz::Relation::getEndDate </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns the end date. </p> <p>As with the begin date, the definition depends on the relation's type. Depending on the relation type, this may or may not be defined.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>a string containing a date</dd></dl> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_music_brainz_1_1_relation.html#a357ce9560efaab45a29232d3c9565109" title="Returns the begin date.">getBeginDate</a> </dd></dl> </div> </div> <a class="anchor" id="ac12f6baaf722a09aad5aee7fa2c6cc1b"></a><!-- doxytag: member="MusicBrainz::Relation::getNumAttributes" ref="ac12f6baaf722a09aad5aee7fa2c6cc1b" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int MusicBrainz::Relation::getNumAttributes </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns number of attributes. </p> <p>This is equivalent to <code><a class="el" href="class_music_brainz_1_1_relation.html#a6333abf6dcdd33f572d591e2f1d8ae02" title="Returns a list of attributes describing this relation.">getAttributes()</a></code>.size()</p> <dl class="return"><dt><b>Returns:</b></dt><dd>an int containing number of attributes</dd></dl> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_music_brainz_1_1_relation.html#a6333abf6dcdd33f572d591e2f1d8ae02" title="Returns a list of attributes describing this relation.">getAttributes</a> </dd></dl> </div> </div> <a class="anchor" id="aef07a5748197446bc5712d0fc9192f2d"></a><!-- doxytag: member="MusicBrainz::Relation::getTarget" ref="aef07a5748197446bc5712d0fc9192f2d" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_music_brainz_1_1_entity.html">Entity</a>* MusicBrainz::Relation::getTarget </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns this relation's target object. </p> <p>Note that URL relations never have a target object. Use the getTargetId method to get the URL.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>a subclass of <a class="el" href="class_music_brainz_1_1_entity.html" title="A first-level MusicBrainz class.">Entity</a>, or NULL </dd></dl> </div> </div> <a class="anchor" id="ae76824dbe1ab8e53584a4dd527f657f5"></a><!-- doxytag: member="MusicBrainz::Relation::getTargetId" ref="ae76824dbe1ab8e53584a4dd527f657f5" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string MusicBrainz::Relation::getTargetId </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns the target's ID. </p> <p>This is the ID the relation points to. It is an absolute URI, and in case of an URL relation, it is a URL.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>a string containing an absolute URI </dd></dl> </div> </div> <a class="anchor" id="a59112553c9fb634d0d4cc2486c268a85"></a><!-- doxytag: member="MusicBrainz::Relation::getTargetType" ref="a59112553c9fb634d0d4cc2486c268a85" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string MusicBrainz::Relation::getTargetType </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns the target's type. </p> <p>For <a class="el" href="namespace_music_brainz.html">MusicBrainz</a> data, the following target types are defined:</p> <ul> <li>artists: <a class="el" href="class_music_brainz_1_1_relation.html#a856e330d4428a66839936de5846ec71c" title="Identifies relations linking to an artist.">Relation::TO_ARTIST</a></li> <li>releases: <a class="el" href="class_music_brainz_1_1_relation.html#adc296c0eecbb2576227bd642e51f01c8" title="Identifies relations linking to a release.">Relation::TO_RELEASE</a></li> <li>tracks: <a class="el" href="class_music_brainz_1_1_relation.html#a32aec0cce1d9a4f29028e1a09df59677" title="Identifies relations linking to a track.">Relation::TO_TRACK</a></li> <li>urls: <a class="el" href="class_music_brainz_1_1_relation.html#ad95e52b195391ff45289b3e42f05e456" title="Identifies relations linking to an URL.">Relation::TO_URL</a></li> </ul> <dl class="return"><dt><b>Returns:</b></dt><dd>a string containing an absolute URI </dd></dl> </div> </div> <a class="anchor" id="aa646006e4de591243fb2762aa9ff1922"></a><!-- doxytag: member="MusicBrainz::Relation::getType" ref="aa646006e4de591243fb2762aa9ff1922" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string MusicBrainz::Relation::getType </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns this relation's type. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>a string containing an absolute URI </dd></dl> </div> </div> <a class="anchor" id="a2c84996732ecc478208ad382e4e5cb97"></a><!-- doxytag: member="MusicBrainz::Relation::setBeginDate" ref="a2c84996732ecc478208ad382e4e5cb97" args="(const std::string &dateStr)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void MusicBrainz::Relation::setBeginDate </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>dateStr</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Sets the begin date. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">dateStr</td><td>a string containing a date</td></tr> </table> </dd> </dl> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_music_brainz_1_1_relation.html#a357ce9560efaab45a29232d3c9565109" title="Returns the begin date.">getBeginDate</a> </dd></dl> </div> </div> <a class="anchor" id="ac172d14b7fab0a3757d17dd52bc261be"></a><!-- doxytag: member="MusicBrainz::Relation::setDirection" ref="ac172d14b7fab0a3757d17dd52bc261be" args="(const Direction direction)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void MusicBrainz::Relation::setDirection </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91">Direction</a> </td> <td class="paramname"><em>direction</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Sets the reading direction. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">direction</td><td><a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91afbc7dd63a90c956a683b0ab1a953cc05" title="Relation reading direction is from source to target.">Relation::DIR_FORWARD</a>, <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a57cb2c448ead3b9aa7f3d1752cb3a943" title="Relation reading direction is from target to source.">Relation::DIR_BACKWARD</a>, or <a class="el" href="class_music_brainz_1_1_relation.html#a5d535f29c38a94bd36ef6fabed97fe91a8c9f7694c1545b412ba7ecc7d061b5b8" title="Relation reading direction doesn't matter.">Relation::DIR_BOTH</a></td></tr> </table> </dd> </dl> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_music_brainz_1_1_relation.html#abb87b2ea8ec3e47bab7f3007b45471f7" title="Returns the reading direction.">getDirection</a> </dd></dl> </div> </div> <a class="anchor" id="a3f45d98b6541544efa643fa3f5ba7fb0"></a><!-- doxytag: member="MusicBrainz::Relation::setEndDate" ref="a3f45d98b6541544efa643fa3f5ba7fb0" args="(const std::string &dateStr)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void MusicBrainz::Relation::setEndDate </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>dateStr</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Sets the end date. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">dateStr,:</td><td>a string containing a date</td></tr> </table> </dd> </dl> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_music_brainz_1_1_relation.html#a357ce9560efaab45a29232d3c9565109" title="Returns the begin date.">getBeginDate</a> </dd></dl> </div> </div> <a class="anchor" id="aa6d2f3549f8199d401e60fd3707305a0"></a><!-- doxytag: member="MusicBrainz::Relation::setTarget" ref="aa6d2f3549f8199d401e60fd3707305a0" args="(Entity *target)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void MusicBrainz::Relation::setTarget </td> <td>(</td> <td class="paramtype"><a class="el" href="class_music_brainz_1_1_entity.html">Entity</a> * </td> <td class="paramname"><em>target</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Sets this relation's target object. </p> <p>Note that URL relations never have a target object, they are set using setTargetId.</p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">target</td><td>a subclass of <a class="el" href="class_music_brainz_1_1_entity.html" title="A first-level MusicBrainz class.">Entity</a>, or NULL </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="aa27dd34b725b04d4f33919c680f49609"></a><!-- doxytag: member="MusicBrainz::Relation::setTargetId" ref="aa27dd34b725b04d4f33919c680f49609" args="(const std::string &targetId)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void MusicBrainz::Relation::setTargetId </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>targetId</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Sets the target's ID. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">targetId</td><td>a string containing an absolute URI</td></tr> </table> </dd> </dl> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_music_brainz_1_1_relation.html#ae76824dbe1ab8e53584a4dd527f657f5" title="Returns the target's ID.">getTargetId</a> </dd></dl> </div> </div> <a class="anchor" id="abdfdeccfe188d97b756c72a971af60b5"></a><!-- doxytag: member="MusicBrainz::Relation::setTargetType" ref="abdfdeccfe188d97b756c72a971af60b5" args="(const std::string &targetType)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void MusicBrainz::Relation::setTargetType </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>targetType</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Sets the target's type. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">targetType</td><td>a string containing an absolute URI</td></tr> </table> </dd> </dl> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_music_brainz_1_1_relation.html#a59112553c9fb634d0d4cc2486c268a85" title="Returns the target's type.">getTargetType</a> </dd></dl> </div> </div> <a class="anchor" id="a445ebced9605e4143bdfd53157f0b2c0"></a><!-- doxytag: member="MusicBrainz::Relation::setType" ref="a445ebced9605e4143bdfd53157f0b2c0" args="(const std::string &type)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void MusicBrainz::Relation::setType </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>type</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Sets this relation's type. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">type</td><td>a string containing an absolute URI </td></tr> </table> </dd> </dl> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="a856e330d4428a66839936de5846ec71c"></a><!-- doxytag: member="MusicBrainz::Relation::TO_ARTIST" ref="a856e330d4428a66839936de5846ec71c" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const std::string <a class="el" href="class_music_brainz_1_1_relation.html#a856e330d4428a66839936de5846ec71c">MusicBrainz::Relation::TO_ARTIST</a><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Identifies relations linking to an artist. </p> </div> </div> <a class="anchor" id="adc296c0eecbb2576227bd642e51f01c8"></a><!-- doxytag: member="MusicBrainz::Relation::TO_RELEASE" ref="adc296c0eecbb2576227bd642e51f01c8" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const std::string <a class="el" href="class_music_brainz_1_1_relation.html#adc296c0eecbb2576227bd642e51f01c8">MusicBrainz::Relation::TO_RELEASE</a><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Identifies relations linking to a release. </p> </div> </div> <a class="anchor" id="a32aec0cce1d9a4f29028e1a09df59677"></a><!-- doxytag: member="MusicBrainz::Relation::TO_TRACK" ref="a32aec0cce1d9a4f29028e1a09df59677" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const std::string <a class="el" href="class_music_brainz_1_1_relation.html#a32aec0cce1d9a4f29028e1a09df59677">MusicBrainz::Relation::TO_TRACK</a><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Identifies relations linking to a track. </p> </div> </div> <a class="anchor" id="ad95e52b195391ff45289b3e42f05e456"></a><!-- doxytag: member="MusicBrainz::Relation::TO_URL" ref="ad95e52b195391ff45289b3e42f05e456" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const std::string <a class="el" href="class_music_brainz_1_1_relation.html#ad95e52b195391ff45289b3e42f05e456">MusicBrainz::Relation::TO_URL</a><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Identifies relations linking to an URL. </p> </div> </div> </div> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespace_music_brainz.html">MusicBrainz</a> </li> <li class="navelem"><a class="el" href="class_music_brainz_1_1_relation.html">Relation</a> </li> <li class="footer">Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </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"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Defines</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> </body> </html>