<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.8"/> <title>UHD: uhd::dict< Key, Val > Class Template Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/search.js"></script> <script type="text/javascript"> $(document).ready(function() { searchBox.OnSelectItem(0); }); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">UHD  <span id="projectnumber">003.007.002-0-unknown</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.8 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li> <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="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </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>Macros</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceuhd.html">uhd</a></li><li class="navelem"><a class="el" href="classuhd_1_1dict.html">dict</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="classuhd_1_1dict-members.html">List of all members</a> </div> <div class="headertitle"> <div class="title">uhd::dict< Key, Val > Class Template Reference</div> </div> </div><!--header--> <div class="contents"> <p><code>#include <<a class="el" href="dict_8hpp_source.html">dict.hpp</a>></code></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:ac22824212af73001d7a59b9cd3e9e86b"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#ac22824212af73001d7a59b9cd3e9e86b">dict</a> (void)</td></tr> <tr class="separator:ac22824212af73001d7a59b9cd3e9e86b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4a0758fb1f969e4b9b9c9d2a98aad02f"><td class="memTemplParams" colspan="2">template<typename InputIterator > </td></tr> <tr class="memitem:a4a0758fb1f969e4b9b9c9d2a98aad02f"><td class="memTemplItemLeft" align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#a4a0758fb1f969e4b9b9c9d2a98aad02f">dict</a> (InputIterator first, InputIterator last)</td></tr> <tr class="separator:a4a0758fb1f969e4b9b9c9d2a98aad02f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a114dc49bb3350b53915621ff909d7e94"><td class="memItemLeft" align="right" valign="top">std::size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#a114dc49bb3350b53915621ff909d7e94">size</a> (void) const </td></tr> <tr class="separator:a114dc49bb3350b53915621ff909d7e94"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad0fc8208d570344c172956407052a5a7"><td class="memItemLeft" align="right" valign="top">std::vector< Key > </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#ad0fc8208d570344c172956407052a5a7">keys</a> (void) const </td></tr> <tr class="separator:ad0fc8208d570344c172956407052a5a7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a19ff838f961f876f6e3ab1a81702b0cc"><td class="memItemLeft" align="right" valign="top">std::vector< Val > </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#a19ff838f961f876f6e3ab1a81702b0cc">vals</a> (void) const </td></tr> <tr class="separator:a19ff838f961f876f6e3ab1a81702b0cc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a525dda34a07a7fa4912e6fe78688991a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#a525dda34a07a7fa4912e6fe78688991a">has_key</a> (const Key &key) const </td></tr> <tr class="separator:a525dda34a07a7fa4912e6fe78688991a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2d88101cd952061a9520478fcb0a3013"><td class="memItemLeft" align="right" valign="top">const Val & </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#a2d88101cd952061a9520478fcb0a3013">get</a> (const Key &key, const Val &other) const </td></tr> <tr class="separator:a2d88101cd952061a9520478fcb0a3013"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab0f9fa1e07fb4765a0a0985f73152cdb"><td class="memItemLeft" align="right" valign="top">const Val & </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#ab0f9fa1e07fb4765a0a0985f73152cdb">get</a> (const Key &key) const </td></tr> <tr class="separator:ab0f9fa1e07fb4765a0a0985f73152cdb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afc5a15726e80fa91f0338a0c41a1c0e5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#afc5a15726e80fa91f0338a0c41a1c0e5">set</a> (const Key &key, const Val &val)</td></tr> <tr class="separator:afc5a15726e80fa91f0338a0c41a1c0e5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a033fdf1fe1f763fd802013c2c3ac3bb8"><td class="memItemLeft" align="right" valign="top">const Val & </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#a033fdf1fe1f763fd802013c2c3ac3bb8">operator[]</a> (const Key &key) const </td></tr> <tr class="separator:a033fdf1fe1f763fd802013c2c3ac3bb8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8948ea3770b847f0142d43e28242e3e6"><td class="memItemLeft" align="right" valign="top">Val & </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#a8948ea3770b847f0142d43e28242e3e6">operator[]</a> (const Key &key)</td></tr> <tr class="separator:a8948ea3770b847f0142d43e28242e3e6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aecbd5d852699f74f15b66354afdb3b51"><td class="memItemLeft" align="right" valign="top">Val </td><td class="memItemRight" valign="bottom"><a class="el" href="classuhd_1_1dict.html#aecbd5d852699f74f15b66354afdb3b51">pop</a> (const Key &key)</td></tr> <tr class="separator:aecbd5d852699f74f15b66354afdb3b51"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><h3>template<typename Key, typename Val><br /> class uhd::dict< Key, Val ></h3> <p>A templated dictionary class with a python-like interface. </p> </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> <a class="anchor" id="ac22824212af73001d7a59b9cd3e9e86b"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname"><a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::<a class="el" href="classuhd_1_1dict.html">dict</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Create a new empty dictionary. </p> </div> </div> <a class="anchor" id="a4a0758fb1f969e4b9b9c9d2a98aad02f"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <div class="memtemplate"> template<typename InputIterator > </div> <table class="memname"> <tr> <td class="memname"><a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::<a class="el" href="classuhd_1_1dict.html">dict</a> </td> <td>(</td> <td class="paramtype">InputIterator </td> <td class="paramname"><em>first</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">InputIterator </td> <td class="paramname"><em>last</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Input iterator constructor: Makes boost::assign::map_list_of work. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">first</td><td>the begin iterator </td></tr> <tr><td class="paramname">last</td><td>the end iterator </td></tr> </table> </dd> </dl> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a class="anchor" id="a2d88101cd952061a9520478fcb0a3013"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">const Val& <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::get </td> <td>(</td> <td class="paramtype">const Key & </td> <td class="paramname"><em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const Val & </td> <td class="paramname"><em>other</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div><div class="memdoc"> <p>Get a value in the dict or default. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">key</td><td>the key to look for </td></tr> <tr><td class="paramname">other</td><td>use if key not found </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the value or default </dd></dl> </div> </div> <a class="anchor" id="ab0f9fa1e07fb4765a0a0985f73152cdb"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">const Val& <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::get </td> <td>(</td> <td class="paramtype">const Key & </td> <td class="paramname"><em>key</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Get a value in the dict or throw. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">key</td><td>the key to look for </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the value or default </dd></dl> </div> </div> <a class="anchor" id="a525dda34a07a7fa4912e6fe78688991a"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">bool <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::has_key </td> <td>(</td> <td class="paramtype">const Key & </td> <td class="paramname"><em>key</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Does the dictionary contain this key? </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">key</td><td>the key to look for </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>true if found </dd></dl> </div> </div> <a class="anchor" id="ad0fc8208d570344c172956407052a5a7"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">std::vector<Key> <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::keys </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Get a list of the keys in this dict. Key order depends on insertion precedence. </p><dl class="section return"><dt>Returns</dt><dd>vector of keys </dd></dl> </div> </div> <a class="anchor" id="a033fdf1fe1f763fd802013c2c3ac3bb8"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">const Val& <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::operator[] </td> <td>(</td> <td class="paramtype">const Key & </td> <td class="paramname"><em>key</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Get a value for the given key if it exists. If the key is not found throw an error. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">key</td><td>the key to look for </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the value at the key </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname">an</td><td>exception when not found </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a8948ea3770b847f0142d43e28242e3e6"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">Val& <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::operator[] </td> <td>(</td> <td class="paramtype">const Key & </td> <td class="paramname"><em>key</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Set a value for the given key, however, in reality it really returns a reference which can be assigned to. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">key</td><td>the key to set to </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>a reference to the value </dd></dl> </div> </div> <a class="anchor" id="aecbd5d852699f74f15b66354afdb3b51"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">Val <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::pop </td> <td>(</td> <td class="paramtype">const Key & </td> <td class="paramname"><em>key</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Pop an item out of the dictionary. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">key</td><td>the item key </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the value of the item </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname">an</td><td>exception when not found </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="afc5a15726e80fa91f0338a0c41a1c0e5"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">void <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::set </td> <td>(</td> <td class="paramtype">const Key & </td> <td class="paramname"><em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const Val & </td> <td class="paramname"><em>val</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set a value in the dict at the key. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">key</td><td>the key to set at </td></tr> <tr><td class="paramname">val</td><td>the value to set </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a114dc49bb3350b53915621ff909d7e94"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">std::size_t <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::size </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Get the number of elements in this dict. </p><dl class="section return"><dt>Returns</dt><dd>the number of elements </dd></dl> </div> </div> <a class="anchor" id="a19ff838f961f876f6e3ab1a81702b0cc"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Key, typename Val> </div> <table class="memname"> <tr> <td class="memname">std::vector<Val> <a class="el" href="classuhd_1_1dict.html">uhd::dict</a>< Key, Val >::vals </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Get a list of the values in this dict. Value order depends on insertion precedence. </p><dl class="section return"><dt>Returns</dt><dd>vector of values </dd></dl> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>include/uhd/types/<a class="el" href="dict_8hpp_source.html">dict.hpp</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Wed Oct 15 2014 11:47:53 for UHD by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.8 </small></address> </body> </html>