~ubuntu-branches/ubuntu/trusty/glibmm2.4/trusty

« back to all changes in this revision

Viewing changes to docs/reference/html/classGlib_1_1BalancedTree.html

  • Committer: Package Import Robot
  • Author(s): Robert Ancell
  • Date: 2012-09-12 09:46:50 UTC
  • mfrom: (1.2.76)
  • Revision ID: package-import@ubuntu.com-20120912094650-36b1cyv60x66yv8m
Tags: 2.33.12-0ubuntu1
* New upstream bugfix release
* debian/control:
  - Bump build-depends on libglib2.0-dev

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
<html xmlns="http://www.w3.org/1999/xhtml">
3
3
<head>
4
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
 
<title>glibmm: Glib::BalancedTree Class Reference</title>
6
 
 
 
5
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
 
6
<title>glibmm: Glib::BalancedTree&lt; K, V &gt; Class Template Reference</title>
7
7
<link href="tabs.css" rel="stylesheet" type="text/css"/>
8
 
<link href="/home/murrayc/checkouts/gnome30/glibmm/docs/doxygen.css" rel="stylesheet" type="text/css" />
9
 
 
10
 
 
11
 
 
 
8
<script type="text/javascript" src="jquery.js"></script>
 
9
<script type="text/javascript" src="dynsections.js"></script>
 
10
<link href="doxygen.css" rel="stylesheet" type="text/css" />
12
11
</head>
13
12
<body>
14
 
<div id="top"><!-- do not remove this div! -->
15
 
 
16
 
 
 
13
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
17
14
<div id="titlearea">
18
15
<table cellspacing="0" cellpadding="0">
19
16
 <tbody>
20
17
 <tr style="height: 56px;">
21
 
  
22
 
  
23
18
  <td style="padding-left: 0.5em;">
24
19
   <div id="projectname">glibmm
25
 
   &#160;<span id="projectnumber">2.33.3</span>
 
20
   &#160;<span id="projectnumber">2.33.12</span>
26
21
   </div>
27
 
   
28
22
  </td>
29
 
  
30
 
  
31
 
  
32
23
 </tr>
33
24
 </tbody>
34
25
</table>
35
26
</div>
36
 
 
37
 
<!-- Generated by Doxygen 1.7.5 -->
 
27
<!-- end header part -->
 
28
<!-- Generated by Doxygen 1.8.1.1 -->
38
29
  <div id="navrow1" class="tabs">
39
30
    <ul class="tablist">
40
31
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
53
44
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
54
45
    </ul>
55
46
  </div>
56
 
  <div id="nav-path" class="navpath">
57
 
    <ul>
58
 
      <li class="navelem"><a class="el" href="namespaceGlib.html">Glib</a> </li>
59
 
      <li class="navelem"><a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a> </li>
60
 
    </ul>
61
 
  </div>
 
47
<div id="nav-path" class="navpath">
 
48
  <ul>
 
49
<li class="navelem"><a class="el" href="namespaceGlib.html">Glib</a></li><li class="navelem"><a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a></li> </ul>
62
50
</div>
 
51
</div><!-- top -->
63
52
<div class="header">
64
53
  <div class="summary">
65
54
<a href="#pub-types">Public Types</a> &#124;
67
56
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
68
57
<a href="#pro-methods">Protected Member Functions</a> </div>
69
58
  <div class="headertitle">
70
 
<div class="title">Glib::BalancedTree Class Reference</div> </div>
71
 
</div>
 
59
<div class="title">Glib::BalancedTree&lt; K, V &gt; Class Template Reference</div> </div>
 
60
</div><!--header-->
72
61
<div class="contents">
73
 
<!-- doxytag: class="Glib::BalancedTree" -->
 
62
 
74
63
<p>Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing in order.  <a href="classGlib_1_1BalancedTree.html#details">More...</a></p>
75
64
 
76
65
<p><code>#include &lt;glibmm/balancedtree.h&gt;</code></p>
77
66
 
78
67
<p><a href="classGlib_1_1BalancedTree-members.html">List of all members.</a></p>
79
68
<table class="memberdecls">
80
 
<tr><td colspan="2"><h2><a name="pub-types"></a>
 
69
<tr class="heading"><td colspan="2"><h2><a name="pub-types"></a>
81
70
Public Types</h2></td></tr>
82
 
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; bool, <br class="typebreak"/>
83
 
const K&amp;, const V&amp; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a154ac5a5b5a715967c33e381010af4fb">TraverseFunc</a></td></tr>
84
 
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; int, const <br class="typebreak"/>
85
 
K&amp;, const K&amp; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">CompareFunc</a></td></tr>
86
 
<tr><td colspan="2"><h2><a name="pub-methods"></a>
 
71
<tr class="memitem:a4ff14046f2cef700ea37b5b9eb1e2e4e"><td class="memItemLeft" align="right" valign="top">typedef <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; bool, <br class="typebreak"/>
 
72
const K&amp;, const V&amp; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a4ff14046f2cef700ea37b5b9eb1e2e4e">TraverseFunc</a></td></tr>
 
73
<tr class="memitem:a9d637241cab431a674cadf806c0a83d4"><td class="memItemLeft" align="right" valign="top">typedef <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; int, const <br class="typebreak"/>
 
74
K&amp;, const K&amp; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a></td></tr>
 
75
</table><table class="memberdecls">
 
76
<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
87
77
Public Member Functions</h2></td></tr>
88
 
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a0dbc09ed0ee1d259bfb8eed6b322c119">~BalancedTree</a> ()</td></tr>
89
 
<tr><td class="memItemLeft" align="right" valign="top">GTree*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#aed7a050230681a4f7e2295850c65db46">gobj</a> ()</td></tr>
90
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#aed7a050230681a4f7e2295850c65db46"></a><br/></td></tr>
91
 
<tr><td class="memItemLeft" align="right" valign="top">const GTree*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a12f1f81054f7a3707f9927052ad045ab">gobj</a> () const </td></tr>
92
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#a12f1f81054f7a3707f9927052ad045ab"></a><br/></td></tr>
93
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#abdca6b386fa6d80f17b5ea071e72e5c3">reference</a> ()</td></tr>
94
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Increments the reference count of tree by one. <a href="#abdca6b386fa6d80f17b5ea071e72e5c3"></a><br/></td></tr>
95
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a5b605a8e0f1b148f565a62403e542a24">unreference</a> ()</td></tr>
96
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrements the reference count of tree by one. <a href="#a5b605a8e0f1b148f565a62403e542a24"></a><br/></td></tr>
97
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a5c25a47b95b95bf82382abfc9c2b938f">insert</a> (const K&amp; key, const V&amp;<a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01661.html#ga1c9e781d8d15a3814a601f471797c825">value</a>)</td></tr>
98
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Inserts a key/value pair into a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#a5c25a47b95b95bf82382abfc9c2b938f"></a><br/></td></tr>
99
 
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a8bcbb627536ca6259dae6fb2c310657a">remove</a> (const K&amp; key)</td></tr>
100
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a key/value pair from a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#a8bcbb627536ca6259dae6fb2c310657a"></a><br/></td></tr>
101
 
<tr><td class="memItemLeft" align="right" valign="top">V*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a2a3e2487e0da086402f9ac82a323b807">lookup</a> (const K&amp; key)</td></tr>
102
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the value corresponding to the given key. <a href="#a2a3e2487e0da086402f9ac82a323b807"></a><br/></td></tr>
103
 
<tr><td class="memItemLeft" align="right" valign="top">const V*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a24be930c7f257bce0022ff146c5eb68a">lookup</a> (const K&amp; key) const </td></tr>
104
 
<tr><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#aedfba5c61a000954962cecbb1d93b7bf">height</a> () const </td></tr>
105
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the height of a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#aedfba5c61a000954962cecbb1d93b7bf"></a><br/></td></tr>
106
 
<tr><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a9f1d10536381051fffe35960cd6a29a6">nnodes</a> () const </td></tr>
107
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of nodes in a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#a9f1d10536381051fffe35960cd6a29a6"></a><br/></td></tr>
108
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#adb30dc8624d087a147aa5d232f0ffb5e">foreach</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a154ac5a5b5a715967c33e381010af4fb">TraverseFunc</a>&amp; func) const </td></tr>
109
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Calls the given function for each of the key/value pairs in the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#adb30dc8624d087a147aa5d232f0ffb5e"></a><br/></td></tr>
110
 
<tr><td class="memItemLeft" align="right" valign="top">V*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a7dcc3d5ec0f3a55f8417158a665fbbdd">search</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">CompareFunc</a>&amp; search_func, const K&amp; key)</td></tr>
111
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> using <em>search_func</em>. <a href="#a7dcc3d5ec0f3a55f8417158a665fbbdd"></a><br/></td></tr>
112
 
<tr><td class="memItemLeft" align="right" valign="top">const V*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a529e85602ec10cf72a5ce36bc082806e">search</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">CompareFunc</a>&amp; search_func, const K&amp; key) const </td></tr>
113
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> using <em>search_func</em>. <a href="#a529e85602ec10cf72a5ce36bc082806e"></a><br/></td></tr>
114
 
<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
 
78
<tr class="memitem:a6ad3ee2e4c7a396e059171800f703e13"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a6ad3ee2e4c7a396e059171800f703e13">~BalancedTree</a> ()</td></tr>
 
79
<tr class="memitem:a3992ca9669a73f98167e988ce0ff4415"><td class="memItemLeft" align="right" valign="top">GTree*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a3992ca9669a73f98167e988ce0ff4415">gobj</a> ()</td></tr>
 
80
<tr class="memdesc:a3992ca9669a73f98167e988ce0ff4415"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#a3992ca9669a73f98167e988ce0ff4415"></a><br/></td></tr>
 
81
<tr class="memitem:aa95ee73b9302c6e53dce0e2b9a642b4c"><td class="memItemLeft" align="right" valign="top">const GTree*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#aa95ee73b9302c6e53dce0e2b9a642b4c">gobj</a> () const </td></tr>
 
82
<tr class="memdesc:aa95ee73b9302c6e53dce0e2b9a642b4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#aa95ee73b9302c6e53dce0e2b9a642b4c"></a><br/></td></tr>
 
83
<tr class="memitem:a80e50b78322d85f165ac2d6607ca9cb3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a80e50b78322d85f165ac2d6607ca9cb3">reference</a> ()</td></tr>
 
84
<tr class="memdesc:a80e50b78322d85f165ac2d6607ca9cb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increments the reference count of tree by one. <a href="#a80e50b78322d85f165ac2d6607ca9cb3"></a><br/></td></tr>
 
85
<tr class="memitem:a6530fc006eec5d249a520be7e8bf4f20"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a6530fc006eec5d249a520be7e8bf4f20">unreference</a> ()</td></tr>
 
86
<tr class="memdesc:a6530fc006eec5d249a520be7e8bf4f20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrements the reference count of tree by one. <a href="#a6530fc006eec5d249a520be7e8bf4f20"></a><br/></td></tr>
 
87
<tr class="memitem:a1ff2e47b569956c2c8d19ba3f538346c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a1ff2e47b569956c2c8d19ba3f538346c">insert</a> (const K&amp; key, const V&amp;<a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01661.html#ga1c9e781d8d15a3814a601f471797c825">value</a>)</td></tr>
 
88
<tr class="memdesc:a1ff2e47b569956c2c8d19ba3f538346c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inserts a key/value pair into a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#a1ff2e47b569956c2c8d19ba3f538346c"></a><br/></td></tr>
 
89
<tr class="memitem:a751401d64137e241cacfec8e05ea5971"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a751401d64137e241cacfec8e05ea5971">remove</a> (const K&amp; key)</td></tr>
 
90
<tr class="memdesc:a751401d64137e241cacfec8e05ea5971"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a key/value pair from a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#a751401d64137e241cacfec8e05ea5971"></a><br/></td></tr>
 
91
<tr class="memitem:a1004e229bf2fccbd79b15a7f567a51e0"><td class="memItemLeft" align="right" valign="top">V*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a1004e229bf2fccbd79b15a7f567a51e0">lookup</a> (const K&amp; key)</td></tr>
 
92
<tr class="memdesc:a1004e229bf2fccbd79b15a7f567a51e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the value corresponding to the given key. <a href="#a1004e229bf2fccbd79b15a7f567a51e0"></a><br/></td></tr>
 
93
<tr class="memitem:acc3b86a40f9c6ce3f2870d2d51627cae"><td class="memItemLeft" align="right" valign="top">const V*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#acc3b86a40f9c6ce3f2870d2d51627cae">lookup</a> (const K&amp; key) const </td></tr>
 
94
<tr class="memitem:ab7f312cc9aa4a0cfc4d2b8b24b3d9749"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#ab7f312cc9aa4a0cfc4d2b8b24b3d9749">height</a> () const </td></tr>
 
95
<tr class="memdesc:ab7f312cc9aa4a0cfc4d2b8b24b3d9749"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the height of a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#ab7f312cc9aa4a0cfc4d2b8b24b3d9749"></a><br/></td></tr>
 
96
<tr class="memitem:aa5965a94bd4afaa5da1dfb1c6406fef7"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#aa5965a94bd4afaa5da1dfb1c6406fef7">nnodes</a> () const </td></tr>
 
97
<tr class="memdesc:aa5965a94bd4afaa5da1dfb1c6406fef7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of nodes in a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#aa5965a94bd4afaa5da1dfb1c6406fef7"></a><br/></td></tr>
 
98
<tr class="memitem:aa1235b0242c3d7d87310adb6e370ec12"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#aa1235b0242c3d7d87310adb6e370ec12">foreach</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a4ff14046f2cef700ea37b5b9eb1e2e4e">TraverseFunc</a>&amp; func) const </td></tr>
 
99
<tr class="memdesc:aa1235b0242c3d7d87310adb6e370ec12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calls the given function for each of the key/value pairs in the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. <a href="#aa1235b0242c3d7d87310adb6e370ec12"></a><br/></td></tr>
 
100
<tr class="memitem:a55668fb48bb53d3099084db1088c9495"><td class="memItemLeft" align="right" valign="top">V*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a55668fb48bb53d3099084db1088c9495">search</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a>&amp; search_func, const K&amp; key)</td></tr>
 
101
<tr class="memdesc:a55668fb48bb53d3099084db1088c9495"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> using <em>search_func</em>. <a href="#a55668fb48bb53d3099084db1088c9495"></a><br/></td></tr>
 
102
<tr class="memitem:ae9339e46ced588dfc632ef35a6e97418"><td class="memItemLeft" align="right" valign="top">const V*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#ae9339e46ced588dfc632ef35a6e97418">search</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a>&amp; search_func, const K&amp; key) const </td></tr>
 
103
<tr class="memdesc:ae9339e46ced588dfc632ef35a6e97418"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> using <em>search_func</em>. <a href="#ae9339e46ced588dfc632ef35a6e97418"></a><br/></td></tr>
 
104
</table><table class="memberdecls">
 
105
<tr class="heading"><td colspan="2"><h2><a name="pub-static-methods"></a>
115
106
Static Public Member Functions</h2></td></tr>
116
 
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><br class="typebreak"/>
117
 
&lt; <a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a>&lt; K, V &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#ad08bd37cbb7b494485655e1fcd0208c8">create</a> ()</td></tr>
118
 
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><br class="typebreak"/>
119
 
&lt; <a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a>&lt; K, V &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a77e82a6d3a397c44c4c3bd70c5aa7c5d">create</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">CompareFunc</a>&amp; key_compare_slot)</td></tr>
120
 
<tr><td colspan="2"><h2><a name="pro-methods"></a>
 
107
<tr class="memitem:a346b8289fc878c1d9d3398e81800208e"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><br class="typebreak"/>
 
108
&lt; <a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a>&lt; K, V &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a346b8289fc878c1d9d3398e81800208e">create</a> ()</td></tr>
 
109
<tr class="memitem:a225d6f1c845767474de9d024f9fa876a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><br class="typebreak"/>
 
110
&lt; <a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a>&lt; K, V &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a225d6f1c845767474de9d024f9fa876a">create</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a>&amp; key_compare_slot)</td></tr>
 
111
</table><table class="memberdecls">
 
112
<tr class="heading"><td colspan="2"><h2><a name="pro-methods"></a>
121
113
Protected Member Functions</h2></td></tr>
122
 
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a586561d5c3c1f8e4abacaac08a3888d4">BalancedTree</a> ()</td></tr>
123
 
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#aaa70385ac85ba16f43cdb98813f9b93e">BalancedTree</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">CompareFunc</a>&amp; key_compare_slot_)</td></tr>
 
114
<tr class="memitem:a26c7764fe28c41b2527be4111ef76a59"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a26c7764fe28c41b2527be4111ef76a59">BalancedTree</a> ()</td></tr>
 
115
<tr class="memitem:a8ded6a08615b93ef62b84418d5894499"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1BalancedTree.html#a8ded6a08615b93ef62b84418d5894499">BalancedTree</a> (const <a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a>&amp; key_compare_slot_)</td></tr>
124
116
</table>
125
117
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
126
 
<div class="textblock"><p>Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing in order. </p>
 
118
<div class="textblock"><h3>template&lt;typename K, typename V&gt;<br/>
 
119
class Glib::BalancedTree&lt; K, V &gt;</h3>
 
120
 
 
121
<p>Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing in order. </p>
127
122
<p>The <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> structure and its associated functions provide a sorted collection of key/value pairs optimized for searching and traversing in order.</p>
128
 
<p>To insert a key/value pair into a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> use <a class="el" href="classGlib_1_1BalancedTree.html#a5c25a47b95b95bf82382abfc9c2b938f" title="Inserts a key/value pair into a BalancedTree.">insert()</a>.</p>
129
 
<p>To lookup the value corresponding to a given key, use <a class="el" href="classGlib_1_1BalancedTree.html#a2a3e2487e0da086402f9ac82a323b807" title="Gets the value corresponding to the given key.">lookup()</a>.</p>
130
 
<p>To find out the number of nodes in a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>, use <a class="el" href="classGlib_1_1BalancedTree.html#a9f1d10536381051fffe35960cd6a29a6" title="Gets the number of nodes in a BalancedTree.">nnodes()</a>. To get the height of a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>, use <a class="el" href="classGlib_1_1BalancedTree.html#aedfba5c61a000954962cecbb1d93b7bf" title="Gets the height of a BalancedTree.">height()</a>.</p>
131
 
<p>To traverse a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>, calling a function for each node visited in the traversal, use <a class="el" href="classGlib_1_1BalancedTree.html#adb30dc8624d087a147aa5d232f0ffb5e" title="Calls the given function for each of the key/value pairs in the BalancedTree.">foreach()</a>.</p>
132
 
<p>To remove a key/value pair use <a class="el" href="classGlib_1_1BalancedTree.html#a8bcbb627536ca6259dae6fb2c310657a" title="Removes a key/value pair from a BalancedTree.">remove()</a>.</p>
 
123
<p>To insert a key/value pair into a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> use <a class="el" href="classGlib_1_1BalancedTree.html#a1ff2e47b569956c2c8d19ba3f538346c" title="Inserts a key/value pair into a BalancedTree.">insert()</a>.</p>
 
124
<p>To lookup the value corresponding to a given key, use <a class="el" href="classGlib_1_1BalancedTree.html#a1004e229bf2fccbd79b15a7f567a51e0" title="Gets the value corresponding to the given key.">lookup()</a>.</p>
 
125
<p>To find out the number of nodes in a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>, use <a class="el" href="classGlib_1_1BalancedTree.html#aa5965a94bd4afaa5da1dfb1c6406fef7" title="Gets the number of nodes in a BalancedTree.">nnodes()</a>. To get the height of a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>, use <a class="el" href="classGlib_1_1BalancedTree.html#ab7f312cc9aa4a0cfc4d2b8b24b3d9749" title="Gets the height of a BalancedTree.">height()</a>.</p>
 
126
<p>To traverse a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>, calling a function for each node visited in the traversal, use <a class="el" href="classGlib_1_1BalancedTree.html#aa1235b0242c3d7d87310adb6e370ec12" title="Calls the given function for each of the key/value pairs in the BalancedTree.">foreach()</a>.</p>
 
127
<p>To remove a key/value pair use <a class="el" href="classGlib_1_1BalancedTree.html#a751401d64137e241cacfec8e05ea5971" title="Removes a key/value pair from a BalancedTree.">remove()</a>.</p>
133
128
<p>Any type to be used with this template must implement copy constructor. Compiler-generated implementations are OK, provided they do the right thing for the type. Both keys and values are stored in the balanced binary tree as copies, created by copy contructors.</p>
134
129
<p>Type of key to be used with this template must implement:</p>
135
130
<ul>
137
132
<li>greater than operator</li>
138
133
</ul>
139
134
</div><hr/><h2>Member Typedef Documentation</h2>
140
 
<a class="anchor" id="a3f0fca6b4f83d4e5660a5b216b47d44d"></a><!-- doxytag: member="Glib::BalancedTree::CompareFunc" ref="a3f0fca6b4f83d4e5660a5b216b47d44d" args="" -->
 
135
<a class="anchor" id="a9d637241cab431a674cadf806c0a83d4"></a>
141
136
<div class="memitem">
142
137
<div class="memproto">
 
138
<div class="memtemplate">
 
139
template &lt;typename K , typename V &gt; </div>
143
140
      <table class="memname">
144
141
        <tr>
145
 
          <td class="memname">typedef <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt;int, const K&amp;, const K&amp;&gt; <a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">Glib::BalancedTree::CompareFunc</a></td>
 
142
          <td class="memname">typedef <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt;int, const K&amp;, const K&amp;&gt; <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::<a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a></td>
146
143
        </tr>
147
144
      </table>
148
 
</div>
149
 
<div class="memdoc">
 
145
</div><div class="memdoc">
150
146
 
151
147
</div>
152
148
</div>
153
 
<a class="anchor" id="a154ac5a5b5a715967c33e381010af4fb"></a><!-- doxytag: member="Glib::BalancedTree::TraverseFunc" ref="a154ac5a5b5a715967c33e381010af4fb" args="" -->
 
149
<a class="anchor" id="a4ff14046f2cef700ea37b5b9eb1e2e4e"></a>
154
150
<div class="memitem">
155
151
<div class="memproto">
 
152
<div class="memtemplate">
 
153
template &lt;typename K , typename V &gt; </div>
156
154
      <table class="memname">
157
155
        <tr>
158
 
          <td class="memname">typedef <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt;bool, const K&amp;, const V&amp;&gt; <a class="el" href="classGlib_1_1BalancedTree.html#a154ac5a5b5a715967c33e381010af4fb">Glib::BalancedTree::TraverseFunc</a></td>
 
156
          <td class="memname">typedef <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt;bool, const K&amp;, const V&amp;&gt; <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::<a class="el" href="classGlib_1_1BalancedTree.html#a4ff14046f2cef700ea37b5b9eb1e2e4e">TraverseFunc</a></td>
159
157
        </tr>
160
158
      </table>
161
 
</div>
162
 
<div class="memdoc">
 
159
</div><div class="memdoc">
163
160
 
164
161
</div>
165
162
</div>
166
163
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
167
 
<a class="anchor" id="a586561d5c3c1f8e4abacaac08a3888d4"></a><!-- doxytag: member="Glib::BalancedTree::BalancedTree" ref="a586561d5c3c1f8e4abacaac08a3888d4" args="()" -->
 
164
<a class="anchor" id="a26c7764fe28c41b2527be4111ef76a59"></a>
168
165
<div class="memitem">
169
166
<div class="memproto">
 
167
<div class="memtemplate">
 
168
template &lt;typename K , typename V &gt; </div>
 
169
<table class="mlabels">
 
170
  <tr>
 
171
  <td class="mlabels-left">
170
172
      <table class="memname">
171
173
        <tr>
172
 
          <td class="memname">Glib::BalancedTree::BalancedTree </td>
 
174
          <td class="memname"><a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::<a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a> </td>
173
175
          <td>(</td>
174
176
          <td class="paramname"></td><td>)</td>
175
 
          <td><code> [inline, protected]</code></td>
 
177
          <td></td>
176
178
        </tr>
177
179
      </table>
178
 
</div>
179
 
<div class="memdoc">
 
180
  </td>
 
181
  <td class="mlabels-right">
 
182
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
 
183
  </tr>
 
184
</table>
 
185
</div><div class="memdoc">
180
186
 
181
187
</div>
182
188
</div>
183
 
<a class="anchor" id="aaa70385ac85ba16f43cdb98813f9b93e"></a><!-- doxytag: member="Glib::BalancedTree::BalancedTree" ref="aaa70385ac85ba16f43cdb98813f9b93e" args="(const CompareFunc &amp;key_compare_slot_)" -->
 
189
<a class="anchor" id="a8ded6a08615b93ef62b84418d5894499"></a>
184
190
<div class="memitem">
185
191
<div class="memproto">
 
192
<div class="memtemplate">
 
193
template &lt;typename K , typename V &gt; </div>
 
194
<table class="mlabels">
 
195
  <tr>
 
196
  <td class="mlabels-left">
186
197
      <table class="memname">
187
198
        <tr>
188
 
          <td class="memname">Glib::BalancedTree::BalancedTree </td>
 
199
          <td class="memname"><a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::<a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a> </td>
189
200
          <td>(</td>
190
 
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">CompareFunc</a>&amp;&#160;</td>
 
201
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a>&amp;&#160;</td>
191
202
          <td class="paramname"><em>key_compare_slot_</em></td><td>)</td>
192
 
          <td><code> [inline, protected]</code></td>
 
203
          <td></td>
193
204
        </tr>
194
205
      </table>
195
 
</div>
196
 
<div class="memdoc">
 
206
  </td>
 
207
  <td class="mlabels-right">
 
208
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
 
209
  </tr>
 
210
</table>
 
211
</div><div class="memdoc">
197
212
 
198
213
</div>
199
214
</div>
200
 
<a class="anchor" id="a0dbc09ed0ee1d259bfb8eed6b322c119"></a><!-- doxytag: member="Glib::BalancedTree::~BalancedTree" ref="a0dbc09ed0ee1d259bfb8eed6b322c119" args="()" -->
 
215
<a class="anchor" id="a6ad3ee2e4c7a396e059171800f703e13"></a>
201
216
<div class="memitem">
202
217
<div class="memproto">
 
218
<div class="memtemplate">
 
219
template &lt;typename K , typename V &gt; </div>
 
220
<table class="mlabels">
 
221
  <tr>
 
222
  <td class="mlabels-left">
203
223
      <table class="memname">
204
224
        <tr>
205
 
          <td class="memname">Glib::BalancedTree::~BalancedTree </td>
 
225
          <td class="memname"><a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::~<a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a> </td>
206
226
          <td>(</td>
207
227
          <td class="paramname"></td><td>)</td>
208
 
          <td><code> [inline]</code></td>
 
228
          <td></td>
209
229
        </tr>
210
230
      </table>
211
 
</div>
212
 
<div class="memdoc">
 
231
  </td>
 
232
  <td class="mlabels-right">
 
233
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
234
  </tr>
 
235
</table>
 
236
</div><div class="memdoc">
213
237
 
214
238
</div>
215
239
</div>
216
240
<hr/><h2>Member Function Documentation</h2>
217
 
<a class="anchor" id="ad08bd37cbb7b494485655e1fcd0208c8"></a><!-- doxytag: member="Glib::BalancedTree::create" ref="ad08bd37cbb7b494485655e1fcd0208c8" args="()" -->
 
241
<a class="anchor" id="a346b8289fc878c1d9d3398e81800208e"></a>
218
242
<div class="memitem">
219
243
<div class="memproto">
 
244
<div class="memtemplate">
 
245
template &lt;typename K , typename V &gt; </div>
 
246
<table class="mlabels">
 
247
  <tr>
 
248
  <td class="mlabels-left">
220
249
      <table class="memname">
221
250
        <tr>
222
 
          <td class="memname">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a>&lt;K, V&gt; &gt; Glib::BalancedTree::create </td>
 
251
          <td class="memname">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a>&lt;K, V&gt; &gt; <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::create </td>
223
252
          <td>(</td>
224
253
          <td class="paramname"></td><td>)</td>
225
 
          <td><code> [inline, static]</code></td>
 
254
          <td></td>
226
255
        </tr>
227
256
      </table>
228
 
</div>
229
 
<div class="memdoc">
 
257
  </td>
 
258
  <td class="mlabels-right">
 
259
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
 
260
  </tr>
 
261
</table>
 
262
</div><div class="memdoc">
230
263
 
231
264
</div>
232
265
</div>
233
 
<a class="anchor" id="a77e82a6d3a397c44c4c3bd70c5aa7c5d"></a><!-- doxytag: member="Glib::BalancedTree::create" ref="a77e82a6d3a397c44c4c3bd70c5aa7c5d" args="(const CompareFunc &amp;key_compare_slot)" -->
 
266
<a class="anchor" id="a225d6f1c845767474de9d024f9fa876a"></a>
234
267
<div class="memitem">
235
268
<div class="memproto">
 
269
<div class="memtemplate">
 
270
template &lt;typename K , typename V &gt; </div>
 
271
<table class="mlabels">
 
272
  <tr>
 
273
  <td class="mlabels-left">
236
274
      <table class="memname">
237
275
        <tr>
238
 
          <td class="memname">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a>&lt;K, V&gt; &gt; Glib::BalancedTree::create </td>
 
276
          <td class="memname">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGlib_1_1BalancedTree.html">BalancedTree</a>&lt;K, V&gt; &gt; <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::create </td>
239
277
          <td>(</td>
240
 
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">CompareFunc</a>&amp;&#160;</td>
 
278
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a>&amp;&#160;</td>
241
279
          <td class="paramname"><em>key_compare_slot</em></td><td>)</td>
242
 
          <td><code> [inline, static]</code></td>
 
280
          <td></td>
243
281
        </tr>
244
282
      </table>
245
 
</div>
246
 
<div class="memdoc">
 
283
  </td>
 
284
  <td class="mlabels-right">
 
285
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
 
286
  </tr>
 
287
</table>
 
288
</div><div class="memdoc">
247
289
 
248
290
</div>
249
291
</div>
250
 
<a class="anchor" id="adb30dc8624d087a147aa5d232f0ffb5e"></a><!-- doxytag: member="Glib::BalancedTree::foreach" ref="adb30dc8624d087a147aa5d232f0ffb5e" args="(const TraverseFunc &amp;func) const " -->
 
292
<a class="anchor" id="aa1235b0242c3d7d87310adb6e370ec12"></a>
251
293
<div class="memitem">
252
294
<div class="memproto">
 
295
<div class="memtemplate">
 
296
template &lt;typename K , typename V &gt; </div>
 
297
<table class="mlabels">
 
298
  <tr>
 
299
  <td class="mlabels-left">
253
300
      <table class="memname">
254
301
        <tr>
255
 
          <td class="memname">void Glib::BalancedTree::foreach </td>
 
302
          <td class="memname">void <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::foreach </td>
256
303
          <td>(</td>
257
 
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a154ac5a5b5a715967c33e381010af4fb">TraverseFunc</a>&amp;&#160;</td>
 
304
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a4ff14046f2cef700ea37b5b9eb1e2e4e">TraverseFunc</a>&amp;&#160;</td>
258
305
          <td class="paramname"><em>func</em></td><td>)</td>
259
 
          <td> const<code> [inline]</code></td>
 
306
          <td> const</td>
260
307
        </tr>
261
308
      </table>
262
 
</div>
263
 
<div class="memdoc">
 
309
  </td>
 
310
  <td class="mlabels-right">
 
311
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
312
  </tr>
 
313
</table>
 
314
</div><div class="memdoc">
264
315
 
265
316
<p>Calls the given function for each of the key/value pairs in the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </p>
266
317
<p>The function is passed the key and value of each pair. The tree is traversed in sorted order.</p>
267
318
<p>The tree may not be modified while iterating over it (you can't add/remove items). To remove all items matching a predicate, you need to add each item to a list in your TraverseFunc as you walk over the tree, then walk the list and remove each item.</p>
268
 
<dl><dt><b>Parameters:</b></dt><dd>
 
319
<dl class="params"><dt>Parameters:</dt><dd>
269
320
  <table class="params">
270
321
    <tr><td class="paramname">func</td><td>The function to call for each node visited. If this function returns true, the traversal is stopped. </td></tr>
271
322
  </table>
274
325
 
275
326
</div>
276
327
</div>
277
 
<a class="anchor" id="aed7a050230681a4f7e2295850c65db46"></a><!-- doxytag: member="Glib::BalancedTree::gobj" ref="aed7a050230681a4f7e2295850c65db46" args="()" -->
278
 
<div class="memitem">
279
 
<div class="memproto">
280
 
      <table class="memname">
281
 
        <tr>
282
 
          <td class="memname">GTree* Glib::BalancedTree::gobj </td>
283
 
          <td>(</td>
284
 
          <td class="paramname"></td><td>)</td>
285
 
          <td><code> [inline]</code></td>
286
 
        </tr>
287
 
      </table>
288
 
</div>
289
 
<div class="memdoc">
290
 
 
291
 
<p>Provides access to the underlying C GObject. </p>
292
 
 
293
 
</div>
294
 
</div>
295
 
<a class="anchor" id="a12f1f81054f7a3707f9927052ad045ab"></a><!-- doxytag: member="Glib::BalancedTree::gobj" ref="a12f1f81054f7a3707f9927052ad045ab" args="() const " -->
296
 
<div class="memitem">
297
 
<div class="memproto">
298
 
      <table class="memname">
299
 
        <tr>
300
 
          <td class="memname">const GTree* Glib::BalancedTree::gobj </td>
301
 
          <td>(</td>
302
 
          <td class="paramname"></td><td>)</td>
303
 
          <td> const<code> [inline]</code></td>
304
 
        </tr>
305
 
      </table>
306
 
</div>
307
 
<div class="memdoc">
308
 
 
309
 
<p>Provides access to the underlying C GObject. </p>
310
 
 
311
 
</div>
312
 
</div>
313
 
<a class="anchor" id="aedfba5c61a000954962cecbb1d93b7bf"></a><!-- doxytag: member="Glib::BalancedTree::height" ref="aedfba5c61a000954962cecbb1d93b7bf" args="() const " -->
314
 
<div class="memitem">
315
 
<div class="memproto">
316
 
      <table class="memname">
317
 
        <tr>
318
 
          <td class="memname">gint Glib::BalancedTree::height </td>
319
 
          <td>(</td>
320
 
          <td class="paramname"></td><td>)</td>
321
 
          <td> const<code> [inline]</code></td>
322
 
        </tr>
323
 
      </table>
324
 
</div>
325
 
<div class="memdoc">
 
328
<a class="anchor" id="a3992ca9669a73f98167e988ce0ff4415"></a>
 
329
<div class="memitem">
 
330
<div class="memproto">
 
331
<div class="memtemplate">
 
332
template &lt;typename K , typename V &gt; </div>
 
333
<table class="mlabels">
 
334
  <tr>
 
335
  <td class="mlabels-left">
 
336
      <table class="memname">
 
337
        <tr>
 
338
          <td class="memname">GTree* <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::gobj </td>
 
339
          <td>(</td>
 
340
          <td class="paramname"></td><td>)</td>
 
341
          <td></td>
 
342
        </tr>
 
343
      </table>
 
344
  </td>
 
345
  <td class="mlabels-right">
 
346
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
347
  </tr>
 
348
</table>
 
349
</div><div class="memdoc">
 
350
 
 
351
<p>Provides access to the underlying C GObject. </p>
 
352
 
 
353
</div>
 
354
</div>
 
355
<a class="anchor" id="aa95ee73b9302c6e53dce0e2b9a642b4c"></a>
 
356
<div class="memitem">
 
357
<div class="memproto">
 
358
<div class="memtemplate">
 
359
template &lt;typename K , typename V &gt; </div>
 
360
<table class="mlabels">
 
361
  <tr>
 
362
  <td class="mlabels-left">
 
363
      <table class="memname">
 
364
        <tr>
 
365
          <td class="memname">const GTree* <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::gobj </td>
 
366
          <td>(</td>
 
367
          <td class="paramname"></td><td>)</td>
 
368
          <td> const</td>
 
369
        </tr>
 
370
      </table>
 
371
  </td>
 
372
  <td class="mlabels-right">
 
373
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
374
  </tr>
 
375
</table>
 
376
</div><div class="memdoc">
 
377
 
 
378
<p>Provides access to the underlying C GObject. </p>
 
379
 
 
380
</div>
 
381
</div>
 
382
<a class="anchor" id="ab7f312cc9aa4a0cfc4d2b8b24b3d9749"></a>
 
383
<div class="memitem">
 
384
<div class="memproto">
 
385
<div class="memtemplate">
 
386
template &lt;typename K , typename V &gt; </div>
 
387
<table class="mlabels">
 
388
  <tr>
 
389
  <td class="mlabels-left">
 
390
      <table class="memname">
 
391
        <tr>
 
392
          <td class="memname">gint <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::height </td>
 
393
          <td>(</td>
 
394
          <td class="paramname"></td><td>)</td>
 
395
          <td> const</td>
 
396
        </tr>
 
397
      </table>
 
398
  </td>
 
399
  <td class="mlabels-right">
 
400
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
401
  </tr>
 
402
</table>
 
403
</div><div class="memdoc">
326
404
 
327
405
<p>Gets the height of a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </p>
328
406
<p>If the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> contains no nodes, the height is 0. If the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> contains only one root node the height is 1. If the root node has children the height is 2, etc.</p>
329
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the height of the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </dd></dl>
 
407
<dl class="section return"><dt>Returns:</dt><dd>the height of the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </dd></dl>
330
408
 
331
409
</div>
332
410
</div>
333
 
<a class="anchor" id="a5c25a47b95b95bf82382abfc9c2b938f"></a><!-- doxytag: member="Glib::BalancedTree::insert" ref="a5c25a47b95b95bf82382abfc9c2b938f" args="(const K &amp;key, const V &amp;value)" -->
 
411
<a class="anchor" id="a1ff2e47b569956c2c8d19ba3f538346c"></a>
334
412
<div class="memitem">
335
413
<div class="memproto">
 
414
<div class="memtemplate">
 
415
template &lt;typename K , typename V &gt; </div>
 
416
<table class="mlabels">
 
417
  <tr>
 
418
  <td class="mlabels-left">
336
419
      <table class="memname">
337
420
        <tr>
338
 
          <td class="memname">void Glib::BalancedTree::insert </td>
 
421
          <td class="memname">void <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::insert </td>
339
422
          <td>(</td>
340
423
          <td class="paramtype">const K &amp;&#160;</td>
341
424
          <td class="paramname"><em>key</em>, </td>
349
432
        <tr>
350
433
          <td></td>
351
434
          <td>)</td>
352
 
          <td></td><td><code> [inline]</code></td>
 
435
          <td></td><td></td>
353
436
        </tr>
354
437
      </table>
355
 
</div>
356
 
<div class="memdoc">
 
438
  </td>
 
439
  <td class="mlabels-right">
 
440
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
441
  </tr>
 
442
</table>
 
443
</div><div class="memdoc">
357
444
 
358
445
<p>Inserts a key/value pair into a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </p>
359
446
<p>If the given key already exists in the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> its corresponding value is set to the new value.</p>
360
447
<p>The tree is automatically 'balanced' as new key/value pairs are added, so that the distance from the root to every leaf is as small as possible.</p>
361
 
<dl><dt><b>Parameters:</b></dt><dd>
 
448
<dl class="params"><dt>Parameters:</dt><dd>
362
449
  <table class="params">
363
450
    <tr><td class="paramname">key</td><td>The key to insert. </td></tr>
364
451
    <tr><td class="paramname">value</td><td>The value corresponding to the key. </td></tr>
368
455
 
369
456
</div>
370
457
</div>
371
 
<a class="anchor" id="a2a3e2487e0da086402f9ac82a323b807"></a><!-- doxytag: member="Glib::BalancedTree::lookup" ref="a2a3e2487e0da086402f9ac82a323b807" args="(const K &amp;key)" -->
 
458
<a class="anchor" id="a1004e229bf2fccbd79b15a7f567a51e0"></a>
372
459
<div class="memitem">
373
460
<div class="memproto">
 
461
<div class="memtemplate">
 
462
template &lt;typename K , typename V &gt; </div>
 
463
<table class="mlabels">
 
464
  <tr>
 
465
  <td class="mlabels-left">
374
466
      <table class="memname">
375
467
        <tr>
376
 
          <td class="memname">V* Glib::BalancedTree::lookup </td>
 
468
          <td class="memname">V* <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::lookup </td>
377
469
          <td>(</td>
378
470
          <td class="paramtype">const K &amp;&#160;</td>
379
471
          <td class="paramname"><em>key</em></td><td>)</td>
380
 
          <td><code> [inline]</code></td>
 
472
          <td></td>
381
473
        </tr>
382
474
      </table>
383
 
</div>
384
 
<div class="memdoc">
 
475
  </td>
 
476
  <td class="mlabels-right">
 
477
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
478
  </tr>
 
479
</table>
 
480
</div><div class="memdoc">
385
481
 
386
482
<p>Gets the value corresponding to the given key. </p>
387
483
<p>Since a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> is automatically balanced as key/value pairs are added, key lookup is very fast.</p>
388
 
<dl><dt><b>Parameters:</b></dt><dd>
 
484
<dl class="params"><dt>Parameters:</dt><dd>
389
485
  <table class="params">
390
486
    <tr><td class="paramname">key</td><td>The key to look up. </td></tr>
391
487
  </table>
392
488
  </dd>
393
489
</dl>
394
 
<dl class="return"><dt><b>Returns:</b></dt><dd>The value corresponding to the key, or 0 if the key was not found. </dd></dl>
 
490
<dl class="section return"><dt>Returns:</dt><dd>The value corresponding to the key, or 0 if the key was not found. </dd></dl>
395
491
 
396
492
</div>
397
493
</div>
398
 
<a class="anchor" id="a24be930c7f257bce0022ff146c5eb68a"></a><!-- doxytag: member="Glib::BalancedTree::lookup" ref="a24be930c7f257bce0022ff146c5eb68a" args="(const K &amp;key) const " -->
 
494
<a class="anchor" id="acc3b86a40f9c6ce3f2870d2d51627cae"></a>
399
495
<div class="memitem">
400
496
<div class="memproto">
 
497
<div class="memtemplate">
 
498
template &lt;typename K , typename V &gt; </div>
 
499
<table class="mlabels">
 
500
  <tr>
 
501
  <td class="mlabels-left">
401
502
      <table class="memname">
402
503
        <tr>
403
 
          <td class="memname">const V* Glib::BalancedTree::lookup </td>
 
504
          <td class="memname">const V* <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::lookup </td>
404
505
          <td>(</td>
405
506
          <td class="paramtype">const K &amp;&#160;</td>
406
507
          <td class="paramname"><em>key</em></td><td>)</td>
407
 
          <td> const<code> [inline]</code></td>
 
508
          <td> const</td>
408
509
        </tr>
409
510
      </table>
410
 
</div>
411
 
<div class="memdoc">
 
511
  </td>
 
512
  <td class="mlabels-right">
 
513
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
514
  </tr>
 
515
</table>
 
516
</div><div class="memdoc">
412
517
 
413
518
</div>
414
519
</div>
415
 
<a class="anchor" id="a9f1d10536381051fffe35960cd6a29a6"></a><!-- doxytag: member="Glib::BalancedTree::nnodes" ref="a9f1d10536381051fffe35960cd6a29a6" args="() const " -->
 
520
<a class="anchor" id="aa5965a94bd4afaa5da1dfb1c6406fef7"></a>
416
521
<div class="memitem">
417
522
<div class="memproto">
 
523
<div class="memtemplate">
 
524
template &lt;typename K , typename V &gt; </div>
 
525
<table class="mlabels">
 
526
  <tr>
 
527
  <td class="mlabels-left">
418
528
      <table class="memname">
419
529
        <tr>
420
 
          <td class="memname">gint Glib::BalancedTree::nnodes </td>
 
530
          <td class="memname">gint <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::nnodes </td>
421
531
          <td>(</td>
422
532
          <td class="paramname"></td><td>)</td>
423
 
          <td> const<code> [inline]</code></td>
 
533
          <td> const</td>
424
534
        </tr>
425
535
      </table>
426
 
</div>
427
 
<div class="memdoc">
 
536
  </td>
 
537
  <td class="mlabels-right">
 
538
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
539
  </tr>
 
540
</table>
 
541
</div><div class="memdoc">
428
542
 
429
543
<p>Gets the number of nodes in a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </p>
430
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of nodes in the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </dd></dl>
 
544
<dl class="section return"><dt>Returns:</dt><dd>the number of nodes in the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </dd></dl>
431
545
 
432
546
</div>
433
547
</div>
434
 
<a class="anchor" id="abdca6b386fa6d80f17b5ea071e72e5c3"></a><!-- doxytag: member="Glib::BalancedTree::reference" ref="abdca6b386fa6d80f17b5ea071e72e5c3" args="()" -->
 
548
<a class="anchor" id="a80e50b78322d85f165ac2d6607ca9cb3"></a>
435
549
<div class="memitem">
436
550
<div class="memproto">
 
551
<div class="memtemplate">
 
552
template &lt;typename K , typename V &gt; </div>
 
553
<table class="mlabels">
 
554
  <tr>
 
555
  <td class="mlabels-left">
437
556
      <table class="memname">
438
557
        <tr>
439
 
          <td class="memname">void Glib::BalancedTree::reference </td>
 
558
          <td class="memname">void <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::<a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01683.html#gac3dcdf43512d32f125e8062c8d7db069">reference</a> </td>
440
559
          <td>(</td>
441
560
          <td class="paramname"></td><td>)</td>
442
 
          <td><code> [inline]</code></td>
 
561
          <td></td>
443
562
        </tr>
444
563
      </table>
445
 
</div>
446
 
<div class="memdoc">
 
564
  </td>
 
565
  <td class="mlabels-right">
 
566
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
567
  </tr>
 
568
</table>
 
569
</div><div class="memdoc">
447
570
 
448
571
<p>Increments the reference count of tree by one. </p>
449
572
<p>It is safe to call this function from any thread. </p>
450
573
 
451
574
</div>
452
575
</div>
453
 
<a class="anchor" id="a8bcbb627536ca6259dae6fb2c310657a"></a><!-- doxytag: member="Glib::BalancedTree::remove" ref="a8bcbb627536ca6259dae6fb2c310657a" args="(const K &amp;key)" -->
 
576
<a class="anchor" id="a751401d64137e241cacfec8e05ea5971"></a>
454
577
<div class="memitem">
455
578
<div class="memproto">
 
579
<div class="memtemplate">
 
580
template &lt;typename K , typename V &gt; </div>
 
581
<table class="mlabels">
 
582
  <tr>
 
583
  <td class="mlabels-left">
456
584
      <table class="memname">
457
585
        <tr>
458
 
          <td class="memname">bool Glib::BalancedTree::remove </td>
 
586
          <td class="memname">bool <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::remove </td>
459
587
          <td>(</td>
460
588
          <td class="paramtype">const K &amp;&#160;</td>
461
589
          <td class="paramname"><em>key</em></td><td>)</td>
462
 
          <td><code> [inline]</code></td>
 
590
          <td></td>
463
591
        </tr>
464
592
      </table>
465
 
</div>
466
 
<div class="memdoc">
 
593
  </td>
 
594
  <td class="mlabels-right">
 
595
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
596
  </tr>
 
597
</table>
 
598
</div><div class="memdoc">
467
599
 
468
600
<p>Removes a key/value pair from a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </p>
469
601
<p>If the key does not exist in the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>, the function does nothing.</p>
470
 
<dl><dt><b>Parameters:</b></dt><dd>
 
602
<dl class="params"><dt>Parameters:</dt><dd>
471
603
  <table class="params">
472
604
    <tr><td class="paramname">key</td><td>The key to remove. </td></tr>
473
605
  </table>
474
606
  </dd>
475
607
</dl>
476
 
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the key was found (prior to 2.8, this function returned nothing) </dd></dl>
477
 
 
478
 
</div>
479
 
</div>
480
 
<a class="anchor" id="a7dcc3d5ec0f3a55f8417158a665fbbdd"></a><!-- doxytag: member="Glib::BalancedTree::search" ref="a7dcc3d5ec0f3a55f8417158a665fbbdd" args="(const CompareFunc &amp;search_func, const K &amp;key)" -->
481
 
<div class="memitem">
482
 
<div class="memproto">
483
 
      <table class="memname">
484
 
        <tr>
485
 
          <td class="memname">V* Glib::BalancedTree::search </td>
486
 
          <td>(</td>
487
 
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">CompareFunc</a>&amp;&#160;</td>
488
 
          <td class="paramname"><em>search_func</em>, </td>
489
 
        </tr>
490
 
        <tr>
491
 
          <td class="paramkey"></td>
492
 
          <td></td>
493
 
          <td class="paramtype">const K &amp;&#160;</td>
494
 
          <td class="paramname"><em>key</em>&#160;</td>
495
 
        </tr>
496
 
        <tr>
497
 
          <td></td>
498
 
          <td>)</td>
499
 
          <td></td><td><code> [inline]</code></td>
500
 
        </tr>
501
 
      </table>
502
 
</div>
503
 
<div class="memdoc">
504
 
 
505
 
<p>Searches a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> using <em>search_func</em>. </p>
506
 
<p>The <em>search_func</em> is called with a reference to the key of a key/value pair in the tree. If <em>search_func</em> returns 0 for a key/value pair, then <a class="el" href="classGlib_1_1BalancedTree.html#a7dcc3d5ec0f3a55f8417158a665fbbdd" title="Searches a BalancedTree using search_func.">search()</a> will return the value of that pair. If <em>search_func</em> returns -1, searching will proceed among the key/value pairs that have a smaller key; if <em>search_func</em> returns 1, searching will proceed among the key/value pairs that have a larger key.</p>
507
 
<dl><dt><b>Parameters:</b></dt><dd>
508
 
  <table class="params">
509
 
    <tr><td class="paramname">search_func</td><td>A function used to search the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </td></tr>
510
 
  </table>
511
 
  </dd>
512
 
</dl>
513
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the value corresponding to the found key, or NULL if the key was not found. </dd></dl>
514
 
 
515
 
</div>
516
 
</div>
517
 
<a class="anchor" id="a529e85602ec10cf72a5ce36bc082806e"></a><!-- doxytag: member="Glib::BalancedTree::search" ref="a529e85602ec10cf72a5ce36bc082806e" args="(const CompareFunc &amp;search_func, const K &amp;key) const " -->
518
 
<div class="memitem">
519
 
<div class="memproto">
520
 
      <table class="memname">
521
 
        <tr>
522
 
          <td class="memname">const V* Glib::BalancedTree::search </td>
523
 
          <td>(</td>
524
 
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a3f0fca6b4f83d4e5660a5b216b47d44d">CompareFunc</a>&amp;&#160;</td>
525
 
          <td class="paramname"><em>search_func</em>, </td>
526
 
        </tr>
527
 
        <tr>
528
 
          <td class="paramkey"></td>
529
 
          <td></td>
530
 
          <td class="paramtype">const K &amp;&#160;</td>
531
 
          <td class="paramname"><em>key</em>&#160;</td>
532
 
        </tr>
533
 
        <tr>
534
 
          <td></td>
535
 
          <td>)</td>
536
 
          <td></td><td> const<code> [inline]</code></td>
537
 
        </tr>
538
 
      </table>
539
 
</div>
540
 
<div class="memdoc">
541
 
 
542
 
<p>Searches a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> using <em>search_func</em>. </p>
543
 
<p>The <em>search_func</em> is called with a reference to the key of a key/value pair in the tree. If <em>search_func</em> returns 0 for a key/value pair, then <a class="el" href="classGlib_1_1BalancedTree.html#a7dcc3d5ec0f3a55f8417158a665fbbdd" title="Searches a BalancedTree using search_func.">search()</a> will return the value of that pair. If <em>search_func</em> returns -1, searching will proceed among the key/value pairs that have a smaller key; if <em>search_func</em> returns 1, searching will proceed among the key/value pairs that have a larger key.</p>
544
 
<dl><dt><b>Parameters:</b></dt><dd>
545
 
  <table class="params">
546
 
    <tr><td class="paramname">search_func</td><td>A function used to search the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </td></tr>
547
 
  </table>
548
 
  </dd>
549
 
</dl>
550
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the value corresponding to the found key, or NULL if the key was not found. </dd></dl>
551
 
 
552
 
</div>
553
 
</div>
554
 
<a class="anchor" id="a5b605a8e0f1b148f565a62403e542a24"></a><!-- doxytag: member="Glib::BalancedTree::unreference" ref="a5b605a8e0f1b148f565a62403e542a24" args="()" -->
555
 
<div class="memitem">
556
 
<div class="memproto">
557
 
      <table class="memname">
558
 
        <tr>
559
 
          <td class="memname">void Glib::BalancedTree::unreference </td>
 
608
<dl class="section return"><dt>Returns:</dt><dd>true if the key was found (prior to 2.8, this function returned nothing) </dd></dl>
 
609
 
 
610
</div>
 
611
</div>
 
612
<a class="anchor" id="a55668fb48bb53d3099084db1088c9495"></a>
 
613
<div class="memitem">
 
614
<div class="memproto">
 
615
<div class="memtemplate">
 
616
template &lt;typename K , typename V &gt; </div>
 
617
<table class="mlabels">
 
618
  <tr>
 
619
  <td class="mlabels-left">
 
620
      <table class="memname">
 
621
        <tr>
 
622
          <td class="memname">V* <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::search </td>
 
623
          <td>(</td>
 
624
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a>&amp;&#160;</td>
 
625
          <td class="paramname"><em>search_func</em>, </td>
 
626
        </tr>
 
627
        <tr>
 
628
          <td class="paramkey"></td>
 
629
          <td></td>
 
630
          <td class="paramtype">const K &amp;&#160;</td>
 
631
          <td class="paramname"><em>key</em>&#160;</td>
 
632
        </tr>
 
633
        <tr>
 
634
          <td></td>
 
635
          <td>)</td>
 
636
          <td></td><td></td>
 
637
        </tr>
 
638
      </table>
 
639
  </td>
 
640
  <td class="mlabels-right">
 
641
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
642
  </tr>
 
643
</table>
 
644
</div><div class="memdoc">
 
645
 
 
646
<p>Searches a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> using <em>search_func</em>. </p>
 
647
<p>The <em>search_func</em> is called with a reference to the key of a key/value pair in the tree. If <em>search_func</em> returns 0 for a key/value pair, then <a class="el" href="classGlib_1_1BalancedTree.html#a55668fb48bb53d3099084db1088c9495" title="Searches a BalancedTree using search_func.">search()</a> will return the value of that pair. If <em>search_func</em> returns -1, searching will proceed among the key/value pairs that have a smaller key; if <em>search_func</em> returns 1, searching will proceed among the key/value pairs that have a larger key.</p>
 
648
<dl class="params"><dt>Parameters:</dt><dd>
 
649
  <table class="params">
 
650
    <tr><td class="paramname">search_func</td><td>A function used to search the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </td></tr>
 
651
  </table>
 
652
  </dd>
 
653
</dl>
 
654
<dl class="section return"><dt>Returns:</dt><dd>the value corresponding to the found key, or NULL if the key was not found. </dd></dl>
 
655
 
 
656
</div>
 
657
</div>
 
658
<a class="anchor" id="ae9339e46ced588dfc632ef35a6e97418"></a>
 
659
<div class="memitem">
 
660
<div class="memproto">
 
661
<div class="memtemplate">
 
662
template &lt;typename K , typename V &gt; </div>
 
663
<table class="mlabels">
 
664
  <tr>
 
665
  <td class="mlabels-left">
 
666
      <table class="memname">
 
667
        <tr>
 
668
          <td class="memname">const V* <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::search </td>
 
669
          <td>(</td>
 
670
          <td class="paramtype">const <a class="el" href="classGlib_1_1BalancedTree.html#a9d637241cab431a674cadf806c0a83d4">CompareFunc</a>&amp;&#160;</td>
 
671
          <td class="paramname"><em>search_func</em>, </td>
 
672
        </tr>
 
673
        <tr>
 
674
          <td class="paramkey"></td>
 
675
          <td></td>
 
676
          <td class="paramtype">const K &amp;&#160;</td>
 
677
          <td class="paramname"><em>key</em>&#160;</td>
 
678
        </tr>
 
679
        <tr>
 
680
          <td></td>
 
681
          <td>)</td>
 
682
          <td></td><td> const</td>
 
683
        </tr>
 
684
      </table>
 
685
  </td>
 
686
  <td class="mlabels-right">
 
687
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
688
  </tr>
 
689
</table>
 
690
</div><div class="memdoc">
 
691
 
 
692
<p>Searches a <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a> using <em>search_func</em>. </p>
 
693
<p>The <em>search_func</em> is called with a reference to the key of a key/value pair in the tree. If <em>search_func</em> returns 0 for a key/value pair, then <a class="el" href="classGlib_1_1BalancedTree.html#a55668fb48bb53d3099084db1088c9495" title="Searches a BalancedTree using search_func.">search()</a> will return the value of that pair. If <em>search_func</em> returns -1, searching will proceed among the key/value pairs that have a smaller key; if <em>search_func</em> returns 1, searching will proceed among the key/value pairs that have a larger key.</p>
 
694
<dl class="params"><dt>Parameters:</dt><dd>
 
695
  <table class="params">
 
696
    <tr><td class="paramname">search_func</td><td>A function used to search the <a class="el" href="classGlib_1_1BalancedTree.html" title="Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing...">BalancedTree</a>. </td></tr>
 
697
  </table>
 
698
  </dd>
 
699
</dl>
 
700
<dl class="section return"><dt>Returns:</dt><dd>the value corresponding to the found key, or NULL if the key was not found. </dd></dl>
 
701
 
 
702
</div>
 
703
</div>
 
704
<a class="anchor" id="a6530fc006eec5d249a520be7e8bf4f20"></a>
 
705
<div class="memitem">
 
706
<div class="memproto">
 
707
<div class="memtemplate">
 
708
template &lt;typename K , typename V &gt; </div>
 
709
<table class="mlabels">
 
710
  <tr>
 
711
  <td class="mlabels-left">
 
712
      <table class="memname">
 
713
        <tr>
 
714
          <td class="memname">void <a class="el" href="classGlib_1_1BalancedTree.html">Glib::BalancedTree</a>&lt; K, V &gt;::unreference </td>
560
715
          <td>(</td>
561
716
          <td class="paramname"></td><td>)</td>
562
 
          <td><code> [inline]</code></td>
 
717
          <td></td>
563
718
        </tr>
564
719
      </table>
565
 
</div>
566
 
<div class="memdoc">
 
720
  </td>
 
721
  <td class="mlabels-right">
 
722
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
 
723
  </tr>
 
724
</table>
 
725
</div><div class="memdoc">
567
726
 
568
727
<p>Decrements the reference count of tree by one. </p>
569
728
<p>If the reference count drops to 0, all keys and values will be destroyed and all memory allocated by tree will be released.</p>
571
730
 
572
731
</div>
573
732
</div>
574
 
</div>
575
 
 
576
 
 
 
733
</div><!-- contents -->
 
734
<!-- start footer part -->
577
735
<hr class="footer"/><address class="footer"><small>
578
 
Generated on Tue Jul 10 2012 11:54:22 for glibmm by &#160;<a href="http://www.doxygen.org/index.html">
 
736
Generated on Fri Sep 7 2012 11:00:16 for glibmm by &#160;<a href="http://www.doxygen.org/index.html">
579
737
<img class="footer" src="doxygen.png" alt="doxygen"/>
580
 
</a> 1.7.5
 
738
</a> 1.8.1.1
581
739
</small></address>
582
 
 
583
740
</body>
584
741
</html>