Imported Upstream version 1.63.0
[platform/upstream/boost.git] / libs / geometry / doc / index / html_by_doxygen / classboost_1_1geometry_1_1index_1_1rtree.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.8.6"/>
7 <title>Boost.Geometry.Index: boost::geometry::index::rtree&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt; Class Template Reference</title>
8 <link href="tabs.css" rel="stylesheet" type="text/css"/>
9 <script type="text/javascript" src="jquery.js"></script>
10 <script type="text/javascript" src="dynsections.js"></script>
11 <link href="search/search.css" rel="stylesheet" type="text/css"/>
12 <script type="text/javascript" src="search/search.js"></script>
13 <script type="text/javascript">
14   $(document).ready(function() { searchBox.OnSelectItem(0); });
15 </script>
16 <link href="doxygen.css" rel="stylesheet" type="text/css" />
17 </head>
18 <body>
19 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
20 <div id="titlearea">
21 <table cellspacing="0" cellpadding="0">
22  <tbody>
23  <tr style="height: 56px;">
24   <td style="padding-left: 0.5em;">
25    <div id="projectname">Boost.Geometry.Index
26    </div>
27   </td>
28  </tr>
29  </tbody>
30 </table>
31 </div>
32 <!-- end header part -->
33 <!-- Generated by Doxygen 1.8.6 -->
34 <script type="text/javascript">
35 var searchBox = new SearchBox("searchBox", "search",false,'Search');
36 </script>
37   <div id="navrow1" class="tabs">
38     <ul class="tablist">
39       <li><a href="index.html"><span>Main&#160;Page</span></a></li>
40       <li><a href="modules.html"><span>Modules</span></a></li>
41       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
42       <li><a href="files.html"><span>Files</span></a></li>
43       <li>
44         <div id="MSearchBox" class="MSearchBoxInactive">
45         <span class="left">
46           <img id="MSearchSelect" src="search/mag_sel.png"
47                onmouseover="return searchBox.OnSearchSelectShow()"
48                onmouseout="return searchBox.OnSearchSelectHide()"
49                alt=""/>
50           <input type="text" id="MSearchField" value="Search" accesskey="S"
51                onfocus="searchBox.OnSearchFieldFocus(true)" 
52                onblur="searchBox.OnSearchFieldFocus(false)" 
53                onkeyup="searchBox.OnSearchFieldChange(event)"/>
54           </span><span class="right">
55             <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
56           </span>
57         </div>
58       </li>
59     </ul>
60   </div>
61   <div id="navrow2" class="tabs2">
62     <ul class="tablist">
63       <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
64       <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
65       <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
66       <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
67     </ul>
68   </div>
69 <!-- window showing the filter options -->
70 <div id="MSearchSelectWindow"
71      onmouseover="return searchBox.OnSearchSelectShow()"
72      onmouseout="return searchBox.OnSearchSelectHide()"
73      onkeydown="return searchBox.OnSearchSelectKey(event)">
74 <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Groups</a></div>
75
76 <!-- iframe showing the search results (closed by default) -->
77 <div id="MSearchResultsWindow">
78 <iframe src="javascript:void(0)" frameborder="0" 
79         name="MSearchResults" id="MSearchResults">
80 </iframe>
81 </div>
82
83 <div id="nav-path" class="navpath">
84   <ul>
85 <li class="navelem"><b>boost</b></li><li class="navelem"><b>geometry</b></li><li class="navelem"><b>index</b></li><li class="navelem"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a></li>  </ul>
86 </div>
87 </div><!-- top -->
88 <div class="header">
89   <div class="summary">
90 <a href="#pub-types">Public Types</a> &#124;
91 <a href="#pub-methods">Public Member Functions</a> &#124;
92 <a href="classboost_1_1geometry_1_1index_1_1rtree-members.html">List of all members</a>  </div>
93   <div class="headertitle">
94 <div class="title">boost::geometry::index::rtree&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt; Class Template Reference</div>  </div>
95 </div><!--header-->
96 <div class="contents">
97
98 <p>The R-tree spatial index.  
99  <a href="classboost_1_1geometry_1_1index_1_1rtree.html#details">More...</a></p>
100
101 <p><code>#include &lt;<a class="el" href="rtree_8hpp_source.html">rtree.hpp</a>&gt;</code></p>
102 <table class="memberdecls">
103 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
104 Public Types</h2></td></tr>
105 <tr class="memitem:a5761a41d87b93d4fd548ecb6600ae757"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5761a41d87b93d4fd548ecb6600ae757"></a>
106 typedef Value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a5761a41d87b93d4fd548ecb6600ae757">value_type</a></td></tr>
107 <tr class="memdesc:a5761a41d87b93d4fd548ecb6600ae757"><td class="mdescLeft">&#160;</td><td class="mdescRight">The type of Value stored in the container. <br/></td></tr>
108 <tr class="separator:a5761a41d87b93d4fd548ecb6600ae757"><td class="memSeparator" colspan="2">&#160;</td></tr>
109 <tr class="memitem:a80db5532eb59f7a809bd44ded265eb17"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80db5532eb59f7a809bd44ded265eb17"></a>
110 typedef Parameters&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a></td></tr>
111 <tr class="memdesc:a80db5532eb59f7a809bd44ded265eb17"><td class="mdescLeft">&#160;</td><td class="mdescRight">R-tree parameters type. <br/></td></tr>
112 <tr class="separator:a80db5532eb59f7a809bd44ded265eb17"><td class="memSeparator" colspan="2">&#160;</td></tr>
113 <tr class="memitem:a43a7adb311cafc08e23010ccb4e97fb5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a43a7adb311cafc08e23010ccb4e97fb5"></a>
114 typedef IndexableGetter&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a></td></tr>
115 <tr class="memdesc:a43a7adb311cafc08e23010ccb4e97fb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">The function object extracting Indexable from Value. <br/></td></tr>
116 <tr class="separator:a43a7adb311cafc08e23010ccb4e97fb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
117 <tr class="memitem:ad8fe544de514014a1bd87ea1b881ff9b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8fe544de514014a1bd87ea1b881ff9b"></a>
118 typedef EqualTo&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a></td></tr>
119 <tr class="memdesc:ad8fe544de514014a1bd87ea1b881ff9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">The function object comparing objects of type Value. <br/></td></tr>
120 <tr class="separator:ad8fe544de514014a1bd87ea1b881ff9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
121 <tr class="memitem:ab6618b5c7e88ed70533233fbac0f5b2e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab6618b5c7e88ed70533233fbac0f5b2e"></a>
122 typedef Allocator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a></td></tr>
123 <tr class="memdesc:ab6618b5c7e88ed70533233fbac0f5b2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">The type of allocator used by the container. <br/></td></tr>
124 <tr class="separator:ab6618b5c7e88ed70533233fbac0f5b2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
125 <tr class="memitem:a28e88e55d260a454688fe1bd5e5af96b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28e88e55d260a454688fe1bd5e5af96b"></a>
126 typedef <br class="typebreak"/>
127 index::detail::indexable_type<br class="typebreak"/>
128 &lt; detail::translator<br class="typebreak"/>
129 &lt; IndexableGetter, EqualTo &gt;<br class="typebreak"/>
130  &gt;::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a28e88e55d260a454688fe1bd5e5af96b">indexable_type</a></td></tr>
131 <tr class="memdesc:a28e88e55d260a454688fe1bd5e5af96b"><td class="mdescLeft">&#160;</td><td class="mdescRight">The Indexable type to which Value is translated. <br/></td></tr>
132 <tr class="separator:a28e88e55d260a454688fe1bd5e5af96b"><td class="memSeparator" colspan="2">&#160;</td></tr>
133 <tr class="memitem:a12e80f9da4c68e0e687f1c2012321147"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a12e80f9da4c68e0e687f1c2012321147"></a>
134 typedef geometry::model::box<br class="typebreak"/>
135 &lt; geometry::model::point<br class="typebreak"/>
136 &lt; typename coordinate_type<br class="typebreak"/>
137 &lt; <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a28e88e55d260a454688fe1bd5e5af96b">indexable_type</a> &gt;::type, <br class="typebreak"/>
138 dimension&lt; <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a28e88e55d260a454688fe1bd5e5af96b">indexable_type</a> &gt;<br class="typebreak"/>
139 ::value, typename <br class="typebreak"/>
140 coordinate_system<br class="typebreak"/>
141 &lt; <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a28e88e55d260a454688fe1bd5e5af96b">indexable_type</a> &gt;::type &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a12e80f9da4c68e0e687f1c2012321147">bounds_type</a></td></tr>
142 <tr class="memdesc:a12e80f9da4c68e0e687f1c2012321147"><td class="mdescLeft">&#160;</td><td class="mdescRight">The Box type used by the R-tree. <br/></td></tr>
143 <tr class="separator:a12e80f9da4c68e0e687f1c2012321147"><td class="memSeparator" colspan="2">&#160;</td></tr>
144 <tr class="memitem:a5301c3d7ee3589751579e0573a9e8165"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5301c3d7ee3589751579e0573a9e8165"></a>
145 typedef allocators_type::reference&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a5301c3d7ee3589751579e0573a9e8165">reference</a></td></tr>
146 <tr class="memdesc:a5301c3d7ee3589751579e0573a9e8165"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of reference to Value. <br/></td></tr>
147 <tr class="separator:a5301c3d7ee3589751579e0573a9e8165"><td class="memSeparator" colspan="2">&#160;</td></tr>
148 <tr class="memitem:a615e622930be97ab1f3b8ceee641feaf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a615e622930be97ab1f3b8ceee641feaf"></a>
149 typedef <br class="typebreak"/>
150 allocators_type::const_reference&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a615e622930be97ab1f3b8ceee641feaf">const_reference</a></td></tr>
151 <tr class="memdesc:a615e622930be97ab1f3b8ceee641feaf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of reference to const Value. <br/></td></tr>
152 <tr class="separator:a615e622930be97ab1f3b8ceee641feaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
153 <tr class="memitem:a762ced6b98d2cc6503e2b00549c6a89a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a762ced6b98d2cc6503e2b00549c6a89a"></a>
154 typedef allocators_type::pointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a762ced6b98d2cc6503e2b00549c6a89a">pointer</a></td></tr>
155 <tr class="memdesc:a762ced6b98d2cc6503e2b00549c6a89a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of pointer to Value. <br/></td></tr>
156 <tr class="separator:a762ced6b98d2cc6503e2b00549c6a89a"><td class="memSeparator" colspan="2">&#160;</td></tr>
157 <tr class="memitem:abad30462044d5d8fb607c24a05e8c9c2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abad30462044d5d8fb607c24a05e8c9c2"></a>
158 typedef <br class="typebreak"/>
159 allocators_type::const_pointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#abad30462044d5d8fb607c24a05e8c9c2">const_pointer</a></td></tr>
160 <tr class="memdesc:abad30462044d5d8fb607c24a05e8c9c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of pointer to const Value. <br/></td></tr>
161 <tr class="separator:abad30462044d5d8fb607c24a05e8c9c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
162 <tr class="memitem:ac256168e9371a070515fc61f29c691ed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac256168e9371a070515fc61f29c691ed"></a>
163 typedef <br class="typebreak"/>
164 allocators_type::difference_type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ac256168e9371a070515fc61f29c691ed">difference_type</a></td></tr>
165 <tr class="memdesc:ac256168e9371a070515fc61f29c691ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of difference type. <br/></td></tr>
166 <tr class="separator:ac256168e9371a070515fc61f29c691ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
167 <tr class="memitem:acc1f90d7b70afebc58107c523ece5cd5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc1f90d7b70afebc58107c523ece5cd5"></a>
168 typedef allocators_type::size_type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a></td></tr>
169 <tr class="memdesc:acc1f90d7b70afebc58107c523ece5cd5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integral type used by the container. <br/></td></tr>
170 <tr class="separator:acc1f90d7b70afebc58107c523ece5cd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
171 <tr class="memitem:a701f65f0d6cf2e8b7be7f1c4b8fb7fde"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a701f65f0d6cf2e8b7be7f1c4b8fb7fde"></a>
172 typedef <br class="typebreak"/>
173 index::detail::rtree::iterators::iterator<br class="typebreak"/>
174 &lt; <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a5761a41d87b93d4fd548ecb6600ae757">value_type</a>, options_type, <br class="typebreak"/>
175 translator_type, box_type, <br class="typebreak"/>
176 allocators_type &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a701f65f0d6cf2e8b7be7f1c4b8fb7fde">const_iterator</a></td></tr>
177 <tr class="memdesc:a701f65f0d6cf2e8b7be7f1c4b8fb7fde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of const iterator, category ForwardIterator. <br/></td></tr>
178 <tr class="separator:a701f65f0d6cf2e8b7be7f1c4b8fb7fde"><td class="memSeparator" colspan="2">&#160;</td></tr>
179 <tr class="memitem:ad144a7704ad878caaa84cda79b140855"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad144a7704ad878caaa84cda79b140855"></a>
180 typedef <br class="typebreak"/>
181 index::detail::rtree::iterators::query_iterator<br class="typebreak"/>
182 &lt; <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a5761a41d87b93d4fd548ecb6600ae757">value_type</a>, allocators_type &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad144a7704ad878caaa84cda79b140855">const_query_iterator</a></td></tr>
183 <tr class="memdesc:ad144a7704ad878caaa84cda79b140855"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of const query iterator, category ForwardIterator. <br/></td></tr>
184 <tr class="separator:ad144a7704ad878caaa84cda79b140855"><td class="memSeparator" colspan="2">&#160;</td></tr>
185 </table><table class="memberdecls">
186 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
187 Public Member Functions</h2></td></tr>
188 <tr class="memitem:a55d5fd5d205df08db5267253689ccf0c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a55d5fd5d205df08db5267253689ccf0c">rtree</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a> const &amp;<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a9076baef90a3a9c6018871fa25115a73">parameters</a>=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a>(), <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a> const &amp;getter=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a>(), <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a> const &amp;equal=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a>())</td></tr>
189 <tr class="memdesc:a55d5fd5d205df08db5267253689ccf0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">The constructor.  <a href="#a55d5fd5d205df08db5267253689ccf0c">More...</a><br/></td></tr>
190 <tr class="separator:a55d5fd5d205df08db5267253689ccf0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
191 <tr class="memitem:a1a6b696d4855cbf1866196fe058c3a87"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a1a6b696d4855cbf1866196fe058c3a87">rtree</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a> const &amp;<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a9076baef90a3a9c6018871fa25115a73">parameters</a>, <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a> const &amp;getter, <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a> const &amp;equal, <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;allocator)</td></tr>
192 <tr class="memdesc:a1a6b696d4855cbf1866196fe058c3a87"><td class="mdescLeft">&#160;</td><td class="mdescRight">The constructor.  <a href="#a1a6b696d4855cbf1866196fe058c3a87">More...</a><br/></td></tr>
193 <tr class="separator:a1a6b696d4855cbf1866196fe058c3a87"><td class="memSeparator" colspan="2">&#160;</td></tr>
194 <tr class="memitem:a037f17d8a1dfa4a818ff471dec61c912"><td class="memTemplParams" colspan="2">template&lt;typename Iterator &gt; </td></tr>
195 <tr class="memitem:a037f17d8a1dfa4a818ff471dec61c912"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a037f17d8a1dfa4a818ff471dec61c912">rtree</a> (Iterator first, Iterator last, <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a> const &amp;<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a9076baef90a3a9c6018871fa25115a73">parameters</a>=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a>(), <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a> const &amp;getter=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a>(), <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a> const &amp;equal=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a>(), <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;allocator=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a>())</td></tr>
196 <tr class="memdesc:a037f17d8a1dfa4a818ff471dec61c912"><td class="mdescLeft">&#160;</td><td class="mdescRight">The constructor.  <a href="#a037f17d8a1dfa4a818ff471dec61c912">More...</a><br/></td></tr>
197 <tr class="separator:a037f17d8a1dfa4a818ff471dec61c912"><td class="memSeparator" colspan="2">&#160;</td></tr>
198 <tr class="memitem:a7b96b715c52ddc13d7a81db344825848"><td class="memTemplParams" colspan="2">template&lt;typename Range &gt; </td></tr>
199 <tr class="memitem:a7b96b715c52ddc13d7a81db344825848"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a7b96b715c52ddc13d7a81db344825848">rtree</a> (Range const &amp;rng, <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a> const &amp;<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a9076baef90a3a9c6018871fa25115a73">parameters</a>=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a>(), <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a> const &amp;getter=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a>(), <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a> const &amp;equal=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a>(), <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;allocator=<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a>())</td></tr>
200 <tr class="memdesc:a7b96b715c52ddc13d7a81db344825848"><td class="mdescLeft">&#160;</td><td class="mdescRight">The constructor.  <a href="#a7b96b715c52ddc13d7a81db344825848">More...</a><br/></td></tr>
201 <tr class="separator:a7b96b715c52ddc13d7a81db344825848"><td class="memSeparator" colspan="2">&#160;</td></tr>
202 <tr class="memitem:af8db72811d2be53c409240204e63fb5a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#af8db72811d2be53c409240204e63fb5a">~rtree</a> ()</td></tr>
203 <tr class="memdesc:af8db72811d2be53c409240204e63fb5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">The destructor.  <a href="#af8db72811d2be53c409240204e63fb5a">More...</a><br/></td></tr>
204 <tr class="separator:af8db72811d2be53c409240204e63fb5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
205 <tr class="memitem:a826fc3236e181ad718d5283e95d7866f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a826fc3236e181ad718d5283e95d7866f">rtree</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> const &amp;src)</td></tr>
206 <tr class="memdesc:a826fc3236e181ad718d5283e95d7866f"><td class="mdescLeft">&#160;</td><td class="mdescRight">The copy constructor.  <a href="#a826fc3236e181ad718d5283e95d7866f">More...</a><br/></td></tr>
207 <tr class="separator:a826fc3236e181ad718d5283e95d7866f"><td class="memSeparator" colspan="2">&#160;</td></tr>
208 <tr class="memitem:a72b6b75e083eea2ed26f54d4a2265375"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a72b6b75e083eea2ed26f54d4a2265375">rtree</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> const &amp;src, <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;allocator)</td></tr>
209 <tr class="memdesc:a72b6b75e083eea2ed26f54d4a2265375"><td class="mdescLeft">&#160;</td><td class="mdescRight">The copy constructor.  <a href="#a72b6b75e083eea2ed26f54d4a2265375">More...</a><br/></td></tr>
210 <tr class="separator:a72b6b75e083eea2ed26f54d4a2265375"><td class="memSeparator" colspan="2">&#160;</td></tr>
211 <tr class="memitem:aa8b27db8cb783282ab5274e6769da26a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#aa8b27db8cb783282ab5274e6769da26a">rtree</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> &amp;&amp;src)</td></tr>
212 <tr class="memdesc:aa8b27db8cb783282ab5274e6769da26a"><td class="mdescLeft">&#160;</td><td class="mdescRight">The moving constructor.  <a href="#aa8b27db8cb783282ab5274e6769da26a">More...</a><br/></td></tr>
213 <tr class="separator:aa8b27db8cb783282ab5274e6769da26a"><td class="memSeparator" colspan="2">&#160;</td></tr>
214 <tr class="memitem:a8508c4236d17ff39a1caef058aac8486"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a8508c4236d17ff39a1caef058aac8486">rtree</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> &amp;&amp;src, <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;allocator)</td></tr>
215 <tr class="memdesc:a8508c4236d17ff39a1caef058aac8486"><td class="mdescLeft">&#160;</td><td class="mdescRight">The moving constructor.  <a href="#a8508c4236d17ff39a1caef058aac8486">More...</a><br/></td></tr>
216 <tr class="separator:a8508c4236d17ff39a1caef058aac8486"><td class="memSeparator" colspan="2">&#160;</td></tr>
217 <tr class="memitem:ad0db5e9e41e1553f944b7e740dbbb883"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad0db5e9e41e1553f944b7e740dbbb883">operator=</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> const &amp;src)</td></tr>
218 <tr class="memdesc:ad0db5e9e41e1553f944b7e740dbbb883"><td class="mdescLeft">&#160;</td><td class="mdescRight">The assignment operator.  <a href="#ad0db5e9e41e1553f944b7e740dbbb883">More...</a><br/></td></tr>
219 <tr class="separator:ad0db5e9e41e1553f944b7e740dbbb883"><td class="memSeparator" colspan="2">&#160;</td></tr>
220 <tr class="memitem:af0bf9622ed3e901580b73ed39b746fb7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#af0bf9622ed3e901580b73ed39b746fb7">operator=</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> &amp;&amp;src)</td></tr>
221 <tr class="memdesc:af0bf9622ed3e901580b73ed39b746fb7"><td class="mdescLeft">&#160;</td><td class="mdescRight">The moving assignment.  <a href="#af0bf9622ed3e901580b73ed39b746fb7">More...</a><br/></td></tr>
222 <tr class="separator:af0bf9622ed3e901580b73ed39b746fb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
223 <tr class="memitem:aedb719dfece91d298e9ee56878524c9b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#aedb719dfece91d298e9ee56878524c9b">swap</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> &amp;other)</td></tr>
224 <tr class="memdesc:aedb719dfece91d298e9ee56878524c9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Swaps contents of two rtrees.  <a href="#aedb719dfece91d298e9ee56878524c9b">More...</a><br/></td></tr>
225 <tr class="separator:aedb719dfece91d298e9ee56878524c9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
226 <tr class="memitem:ad47980467e66b8644df18a480dbf9d86"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad47980467e66b8644df18a480dbf9d86">insert</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a5761a41d87b93d4fd548ecb6600ae757">value_type</a> const &amp;value)</td></tr>
227 <tr class="memdesc:ad47980467e66b8644df18a480dbf9d86"><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert a value to the index.  <a href="#ad47980467e66b8644df18a480dbf9d86">More...</a><br/></td></tr>
228 <tr class="separator:ad47980467e66b8644df18a480dbf9d86"><td class="memSeparator" colspan="2">&#160;</td></tr>
229 <tr class="memitem:a60d4c8790fd8810ff8b57f049e6bed8d"><td class="memTemplParams" colspan="2">template&lt;typename Iterator &gt; </td></tr>
230 <tr class="memitem:a60d4c8790fd8810ff8b57f049e6bed8d"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a60d4c8790fd8810ff8b57f049e6bed8d">insert</a> (Iterator first, Iterator last)</td></tr>
231 <tr class="memdesc:a60d4c8790fd8810ff8b57f049e6bed8d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert a range of values to the index.  <a href="#a60d4c8790fd8810ff8b57f049e6bed8d">More...</a><br/></td></tr>
232 <tr class="separator:a60d4c8790fd8810ff8b57f049e6bed8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
233 <tr class="memitem:a5db294b14ebf1319edcfc92e78c8167e"><td class="memTemplParams" colspan="2">template&lt;typename ConvertibleOrRange &gt; </td></tr>
234 <tr class="memitem:a5db294b14ebf1319edcfc92e78c8167e"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a5db294b14ebf1319edcfc92e78c8167e">insert</a> (ConvertibleOrRange const &amp;conv_or_rng)</td></tr>
235 <tr class="memdesc:a5db294b14ebf1319edcfc92e78c8167e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert a value created using convertible object or a range of values to the index.  <a href="#a5db294b14ebf1319edcfc92e78c8167e">More...</a><br/></td></tr>
236 <tr class="separator:a5db294b14ebf1319edcfc92e78c8167e"><td class="memSeparator" colspan="2">&#160;</td></tr>
237 <tr class="memitem:a1ce933b0b833faec5349bfc27bde15d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a1ce933b0b833faec5349bfc27bde15d4">remove</a> (<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a5761a41d87b93d4fd548ecb6600ae757">value_type</a> const &amp;value)</td></tr>
238 <tr class="memdesc:a1ce933b0b833faec5349bfc27bde15d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove a value from the container.  <a href="#a1ce933b0b833faec5349bfc27bde15d4">More...</a><br/></td></tr>
239 <tr class="separator:a1ce933b0b833faec5349bfc27bde15d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
240 <tr class="memitem:aa97084231d17564a94f0142d095cecaa"><td class="memTemplParams" colspan="2">template&lt;typename Iterator &gt; </td></tr>
241 <tr class="memitem:aa97084231d17564a94f0142d095cecaa"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#aa97084231d17564a94f0142d095cecaa">remove</a> (Iterator first, Iterator last)</td></tr>
242 <tr class="memdesc:aa97084231d17564a94f0142d095cecaa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove a range of values from the container.  <a href="#aa97084231d17564a94f0142d095cecaa">More...</a><br/></td></tr>
243 <tr class="separator:aa97084231d17564a94f0142d095cecaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
244 <tr class="memitem:a320cd1861ba7b43364ed53e1f93a4411"><td class="memTemplParams" colspan="2">template&lt;typename ConvertibleOrRange &gt; </td></tr>
245 <tr class="memitem:a320cd1861ba7b43364ed53e1f93a4411"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a320cd1861ba7b43364ed53e1f93a4411">remove</a> (ConvertibleOrRange const &amp;conv_or_rng)</td></tr>
246 <tr class="memdesc:a320cd1861ba7b43364ed53e1f93a4411"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove value corresponding to an object convertible to it or a range of values from the container.  <a href="#a320cd1861ba7b43364ed53e1f93a4411">More...</a><br/></td></tr>
247 <tr class="separator:a320cd1861ba7b43364ed53e1f93a4411"><td class="memSeparator" colspan="2">&#160;</td></tr>
248 <tr class="memitem:a7baa88eb4e7a5c640ab847513de45b3e"><td class="memTemplParams" colspan="2">template&lt;typename Predicates , typename OutIter &gt; </td></tr>
249 <tr class="memitem:a7baa88eb4e7a5c640ab847513de45b3e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a7baa88eb4e7a5c640ab847513de45b3e">query</a> (Predicates const &amp;predicates, OutIter out_it) const </td></tr>
250 <tr class="memdesc:a7baa88eb4e7a5c640ab847513de45b3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds values meeting passed predicates e.g. nearest to some Point and/or intersecting some Box.  <a href="#a7baa88eb4e7a5c640ab847513de45b3e">More...</a><br/></td></tr>
251 <tr class="separator:a7baa88eb4e7a5c640ab847513de45b3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
252 <tr class="memitem:a63d15f3b5b157a47045fcac3fec3b7a0"><td class="memTemplParams" colspan="2">template&lt;typename Predicates &gt; </td></tr>
253 <tr class="memitem:a63d15f3b5b157a47045fcac3fec3b7a0"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad144a7704ad878caaa84cda79b140855">const_query_iterator</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a63d15f3b5b157a47045fcac3fec3b7a0">qbegin</a> (Predicates const &amp;predicates) const </td></tr>
254 <tr class="memdesc:a63d15f3b5b157a47045fcac3fec3b7a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a query iterator pointing at the begin of the query range.  <a href="#a63d15f3b5b157a47045fcac3fec3b7a0">More...</a><br/></td></tr>
255 <tr class="separator:a63d15f3b5b157a47045fcac3fec3b7a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
256 <tr class="memitem:af3b16f4732fa8113c0b2187005182513"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad144a7704ad878caaa84cda79b140855">const_query_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#af3b16f4732fa8113c0b2187005182513">qend</a> () const </td></tr>
257 <tr class="memdesc:af3b16f4732fa8113c0b2187005182513"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a query iterator pointing at the end of the query range.  <a href="#af3b16f4732fa8113c0b2187005182513">More...</a><br/></td></tr>
258 <tr class="separator:af3b16f4732fa8113c0b2187005182513"><td class="memSeparator" colspan="2">&#160;</td></tr>
259 <tr class="memitem:a23219a7705ac491862c67be8baa34f0d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a701f65f0d6cf2e8b7be7f1c4b8fb7fde">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a23219a7705ac491862c67be8baa34f0d">begin</a> () const </td></tr>
260 <tr class="memdesc:a23219a7705ac491862c67be8baa34f0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the iterator pointing at the begin of the rtree values range.  <a href="#a23219a7705ac491862c67be8baa34f0d">More...</a><br/></td></tr>
261 <tr class="separator:a23219a7705ac491862c67be8baa34f0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
262 <tr class="memitem:a513f1bd9dfcd022acb208e62115b29b1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a701f65f0d6cf2e8b7be7f1c4b8fb7fde">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a513f1bd9dfcd022acb208e62115b29b1">end</a> () const </td></tr>
263 <tr class="memdesc:a513f1bd9dfcd022acb208e62115b29b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the iterator pointing at the end of the rtree values range.  <a href="#a513f1bd9dfcd022acb208e62115b29b1">More...</a><br/></td></tr>
264 <tr class="separator:a513f1bd9dfcd022acb208e62115b29b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
265 <tr class="memitem:ac9f152c8c96525e3735b81635d8171b1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ac9f152c8c96525e3735b81635d8171b1">size</a> () const </td></tr>
266 <tr class="memdesc:ac9f152c8c96525e3735b81635d8171b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of stored values.  <a href="#ac9f152c8c96525e3735b81635d8171b1">More...</a><br/></td></tr>
267 <tr class="separator:ac9f152c8c96525e3735b81635d8171b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
268 <tr class="memitem:aa5302ce1c26105d722aac20793e83f0e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#aa5302ce1c26105d722aac20793e83f0e">empty</a> () const </td></tr>
269 <tr class="memdesc:aa5302ce1c26105d722aac20793e83f0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query if the container is empty.  <a href="#aa5302ce1c26105d722aac20793e83f0e">More...</a><br/></td></tr>
270 <tr class="separator:aa5302ce1c26105d722aac20793e83f0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
271 <tr class="memitem:a1bec40977c175983f585c4488cf8fe3c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a1bec40977c175983f585c4488cf8fe3c">clear</a> ()</td></tr>
272 <tr class="memdesc:a1bec40977c175983f585c4488cf8fe3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes all values stored in the container.  <a href="#a1bec40977c175983f585c4488cf8fe3c">More...</a><br/></td></tr>
273 <tr class="separator:a1bec40977c175983f585c4488cf8fe3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
274 <tr class="memitem:a0dad06d0f117f45ed54b5c123cb41d6e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a12e80f9da4c68e0e687f1c2012321147">bounds_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a0dad06d0f117f45ed54b5c123cb41d6e">bounds</a> () const </td></tr>
275 <tr class="memdesc:a0dad06d0f117f45ed54b5c123cb41d6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the box able to contain all values stored in the container.  <a href="#a0dad06d0f117f45ed54b5c123cb41d6e">More...</a><br/></td></tr>
276 <tr class="separator:a0dad06d0f117f45ed54b5c123cb41d6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
277 <tr class="memitem:aaa834c241c191ac9de67f134564f36fa"><td class="memTemplParams" colspan="2">template&lt;typename ValueOrIndexable &gt; </td></tr>
278 <tr class="memitem:aaa834c241c191ac9de67f134564f36fa"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#aaa834c241c191ac9de67f134564f36fa">count</a> (ValueOrIndexable const &amp;vori) const </td></tr>
279 <tr class="memdesc:aaa834c241c191ac9de67f134564f36fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Count Values or Indexables stored in the container.  <a href="#aaa834c241c191ac9de67f134564f36fa">More...</a><br/></td></tr>
280 <tr class="separator:aaa834c241c191ac9de67f134564f36fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
281 <tr class="memitem:a9076baef90a3a9c6018871fa25115a73"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a9076baef90a3a9c6018871fa25115a73">parameters</a> () const </td></tr>
282 <tr class="memdesc:a9076baef90a3a9c6018871fa25115a73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns parameters.  <a href="#a9076baef90a3a9c6018871fa25115a73">More...</a><br/></td></tr>
283 <tr class="separator:a9076baef90a3a9c6018871fa25115a73"><td class="memSeparator" colspan="2">&#160;</td></tr>
284 <tr class="memitem:af391fd642a218c5fb10fc68d643a62b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#af391fd642a218c5fb10fc68d643a62b5">indexable_get</a> () const </td></tr>
285 <tr class="memdesc:af391fd642a218c5fb10fc68d643a62b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns function retrieving Indexable from Value.  <a href="#af391fd642a218c5fb10fc68d643a62b5">More...</a><br/></td></tr>
286 <tr class="separator:af391fd642a218c5fb10fc68d643a62b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
287 <tr class="memitem:a16424563d0973960ac01f7a1969eeebe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a16424563d0973960ac01f7a1969eeebe">value_eq</a> () const </td></tr>
288 <tr class="memdesc:a16424563d0973960ac01f7a1969eeebe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns function comparing Values.  <a href="#a16424563d0973960ac01f7a1969eeebe">More...</a><br/></td></tr>
289 <tr class="separator:a16424563d0973960ac01f7a1969eeebe"><td class="memSeparator" colspan="2">&#160;</td></tr>
290 <tr class="memitem:a17d9cef211feb7f674a5b4602f4cc81e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a17d9cef211feb7f674a5b4602f4cc81e">get_allocator</a> () const </td></tr>
291 <tr class="memdesc:a17d9cef211feb7f674a5b4602f4cc81e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns allocator used by the rtree.  <a href="#a17d9cef211feb7f674a5b4602f4cc81e">More...</a><br/></td></tr>
292 <tr class="separator:a17d9cef211feb7f674a5b4602f4cc81e"><td class="memSeparator" colspan="2">&#160;</td></tr>
293 </table>
294 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
295 <div class="textblock"><h3>template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt;<br/>
296 class boost::geometry::index::rtree&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;</h3>
297
298 <p>The R-tree spatial index. </p>
299 <p>This is self-balancing spatial index capable to store various types of Values and balancing algorithms.</p>
300 <dl class="section user"><dt>Parameters</dt><dd>The user must pass a type defining the Parameters which will be used in rtree creation process. This type is used e.g. to specify balancing algorithm with specific parameters like min and max number of elements in node.</dd></dl>
301 <dl class="section user"><dt></dt><dd>Predefined algorithms with compile-time parameters are: <ul>
302 <li><code><a class="el" href="structboost_1_1geometry_1_1index_1_1linear.html" title="Linear r-tree creation algorithm parameters. ">boost::geometry::index::linear</a></code>, </li>
303 <li><code><a class="el" href="structboost_1_1geometry_1_1index_1_1quadratic.html" title="Quadratic r-tree creation algorithm parameters. ">boost::geometry::index::quadratic</a></code>, </li>
304 <li><code><a class="el" href="structboost_1_1geometry_1_1index_1_1rstar.html" title="R*-tree creation algorithm parameters. ">boost::geometry::index::rstar</a></code>.</li>
305 </ul>
306 </dd></dl>
307 <dl class="section user"><dt></dt><dd>Predefined algorithms with run-time parameters are: <ul>
308 <li><code><a class="el" href="classboost_1_1geometry_1_1index_1_1dynamic__linear.html" title="Linear r-tree creation algorithm parameters - run-time version. ">boost::geometry::index::dynamic_linear</a></code>, </li>
309 <li><code><a class="el" href="classboost_1_1geometry_1_1index_1_1dynamic__quadratic.html" title="Quadratic r-tree creation algorithm parameters - run-time version. ">boost::geometry::index::dynamic_quadratic</a></code>, </li>
310 <li><code><a class="el" href="classboost_1_1geometry_1_1index_1_1dynamic__rstar.html" title="R*-tree creation algorithm parameters - run-time version. ">boost::geometry::index::dynamic_rstar</a></code>.</li>
311 </ul>
312 </dd></dl>
313 <dl class="section user"><dt>IndexableGetter</dt><dd>The object of IndexableGetter type translates from Value to Indexable each time r-tree requires it. This means that this operation is done for each Value access. Therefore the IndexableGetter should return the Indexable by a reference type. The Indexable should not be calculated since it could harm the performance. The default IndexableGetter can translate all types adapted to Point, Box or Segment concepts (called Indexables). Furthermore, it can handle <code>std::pair&lt;Indexable, T&gt;</code>, <code>boost::tuple&lt;Indexable, ...&gt;</code> and <code>std::tuple&lt;Indexable, ...&gt;</code> when possible. For example, for Value of type <code>std::pair&lt;Box, int&gt;</code>, the default IndexableGetter translates from <code>std::pair&lt;Box, int&gt; const&amp;</code> to <code>Box const&amp;</code>.</dd></dl>
314 <dl class="section user"><dt>EqualTo</dt><dd>The object of EqualTo type compares Values and returns <code>true</code> if they are equal. It's similar to <code>std::equal_to&lt;&gt;</code>. The default EqualTo returns the result of <code>boost::geometry::equals()</code> for types adapted to some Geometry concept defined in Boost.Geometry and the result of <code>operator==</code> for other types. Components of Pairs and Tuples are compared left-to-right.</dd></dl>
315 <dl class="tparams"><dt>Template Parameters</dt><dd>
316   <table class="tparams">
317     <tr><td class="paramname">Value</td><td>The type of objects stored in the container. </td></tr>
318     <tr><td class="paramname">Parameters</td><td>Compile-time parameters. </td></tr>
319     <tr><td class="paramname">IndexableGetter</td><td>The function object extracting Indexable from Value. </td></tr>
320     <tr><td class="paramname">EqualTo</td><td>The function object comparing objects of type Value. </td></tr>
321     <tr><td class="paramname">Allocator</td><td>The allocator used to allocate/deallocate memory, construct/destroy nodes and Values. </td></tr>
322   </table>
323   </dd>
324 </dl>
325 </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
326 <a class="anchor" id="a55d5fd5d205df08db5267253689ccf0c"></a>
327 <div class="memitem">
328 <div class="memproto">
329 <div class="memtemplate">
330 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
331 <table class="mlabels">
332   <tr>
333   <td class="mlabels-left">
334       <table class="memname">
335         <tr>
336           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> </td>
337           <td>(</td>
338           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a> const &amp;&#160;</td>
339           <td class="paramname"><em>parameters</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a>()</code>, </td>
340         </tr>
341         <tr>
342           <td class="paramkey"></td>
343           <td></td>
344           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a> const &amp;&#160;</td>
345           <td class="paramname"><em>getter</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a>()</code>, </td>
346         </tr>
347         <tr>
348           <td class="paramkey"></td>
349           <td></td>
350           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a> const &amp;&#160;</td>
351           <td class="paramname"><em>equal</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a>()</code>&#160;</td>
352         </tr>
353         <tr>
354           <td></td>
355           <td>)</td>
356           <td></td><td></td>
357         </tr>
358       </table>
359   </td>
360   <td class="mlabels-right">
361 <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span>  </td>
362   </tr>
363 </table>
364 </div><div class="memdoc">
365
366 <p>The constructor. </p>
367 <dl class="params"><dt>Parameters</dt><dd>
368   <table class="params">
369     <tr><td class="paramname">parameters</td><td>The parameters object. </td></tr>
370     <tr><td class="paramname">getter</td><td>The function object extracting Indexable from Value. </td></tr>
371     <tr><td class="paramname">equal</td><td>The function object comparing Values.</td></tr>
372   </table>
373   </dd>
374 </dl>
375 <dl class="section user"><dt>Throws</dt><dd>If allocator default constructor throws. </dd></dl>
376
377 </div>
378 </div>
379 <a class="anchor" id="a1a6b696d4855cbf1866196fe058c3a87"></a>
380 <div class="memitem">
381 <div class="memproto">
382 <div class="memtemplate">
383 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
384 <table class="mlabels">
385   <tr>
386   <td class="mlabels-left">
387       <table class="memname">
388         <tr>
389           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> </td>
390           <td>(</td>
391           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a> const &amp;&#160;</td>
392           <td class="paramname"><em>parameters</em>, </td>
393         </tr>
394         <tr>
395           <td class="paramkey"></td>
396           <td></td>
397           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a> const &amp;&#160;</td>
398           <td class="paramname"><em>getter</em>, </td>
399         </tr>
400         <tr>
401           <td class="paramkey"></td>
402           <td></td>
403           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a> const &amp;&#160;</td>
404           <td class="paramname"><em>equal</em>, </td>
405         </tr>
406         <tr>
407           <td class="paramkey"></td>
408           <td></td>
409           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;&#160;</td>
410           <td class="paramname"><em>allocator</em>&#160;</td>
411         </tr>
412         <tr>
413           <td></td>
414           <td>)</td>
415           <td></td><td></td>
416         </tr>
417       </table>
418   </td>
419   <td class="mlabels-right">
420 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
421   </tr>
422 </table>
423 </div><div class="memdoc">
424
425 <p>The constructor. </p>
426 <dl class="params"><dt>Parameters</dt><dd>
427   <table class="params">
428     <tr><td class="paramname">parameters</td><td>The parameters object. </td></tr>
429     <tr><td class="paramname">getter</td><td>The function object extracting Indexable from Value. </td></tr>
430     <tr><td class="paramname">equal</td><td>The function object comparing Values. </td></tr>
431     <tr><td class="paramname">allocator</td><td>The allocator object.</td></tr>
432   </table>
433   </dd>
434 </dl>
435 <dl class="section user"><dt>Throws</dt><dd>If allocator copy constructor throws. </dd></dl>
436
437 </div>
438 </div>
439 <a class="anchor" id="a037f17d8a1dfa4a818ff471dec61c912"></a>
440 <div class="memitem">
441 <div class="memproto">
442 <div class="memtemplate">
443 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
444 <div class="memtemplate">
445 template&lt;typename Iterator &gt; </div>
446 <table class="mlabels">
447   <tr>
448   <td class="mlabels-left">
449       <table class="memname">
450         <tr>
451           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> </td>
452           <td>(</td>
453           <td class="paramtype">Iterator&#160;</td>
454           <td class="paramname"><em>first</em>, </td>
455         </tr>
456         <tr>
457           <td class="paramkey"></td>
458           <td></td>
459           <td class="paramtype">Iterator&#160;</td>
460           <td class="paramname"><em>last</em>, </td>
461         </tr>
462         <tr>
463           <td class="paramkey"></td>
464           <td></td>
465           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a> const &amp;&#160;</td>
466           <td class="paramname"><em>parameters</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a>()</code>, </td>
467         </tr>
468         <tr>
469           <td class="paramkey"></td>
470           <td></td>
471           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a> const &amp;&#160;</td>
472           <td class="paramname"><em>getter</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a>()</code>, </td>
473         </tr>
474         <tr>
475           <td class="paramkey"></td>
476           <td></td>
477           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a> const &amp;&#160;</td>
478           <td class="paramname"><em>equal</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a>()</code>, </td>
479         </tr>
480         <tr>
481           <td class="paramkey"></td>
482           <td></td>
483           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;&#160;</td>
484           <td class="paramname"><em>allocator</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a>()</code>&#160;</td>
485         </tr>
486         <tr>
487           <td></td>
488           <td>)</td>
489           <td></td><td></td>
490         </tr>
491       </table>
492   </td>
493   <td class="mlabels-right">
494 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
495   </tr>
496 </table>
497 </div><div class="memdoc">
498
499 <p>The constructor. </p>
500 <p>The tree is created using packing algorithm.</p>
501 <dl class="params"><dt>Parameters</dt><dd>
502   <table class="params">
503     <tr><td class="paramname">first</td><td>The beginning of the range of Values. </td></tr>
504     <tr><td class="paramname">last</td><td>The end of the range of Values. </td></tr>
505     <tr><td class="paramname">parameters</td><td>The parameters object. </td></tr>
506     <tr><td class="paramname">getter</td><td>The function object extracting Indexable from Value. </td></tr>
507     <tr><td class="paramname">equal</td><td>The function object comparing Values. </td></tr>
508     <tr><td class="paramname">allocator</td><td>The allocator object.</td></tr>
509   </table>
510   </dd>
511 </dl>
512 <dl class="section user"><dt>Throws</dt><dd><ul>
513 <li>If allocator copy constructor throws. </li>
514 <li>If Value copy constructor or copy assignment throws. </li>
515 <li>If allocation throws or returns invalid value. </li>
516 </ul>
517 </dd></dl>
518
519 </div>
520 </div>
521 <a class="anchor" id="a7b96b715c52ddc13d7a81db344825848"></a>
522 <div class="memitem">
523 <div class="memproto">
524 <div class="memtemplate">
525 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
526 <div class="memtemplate">
527 template&lt;typename Range &gt; </div>
528 <table class="mlabels">
529   <tr>
530   <td class="mlabels-left">
531       <table class="memname">
532         <tr>
533           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> </td>
534           <td>(</td>
535           <td class="paramtype">Range const &amp;&#160;</td>
536           <td class="paramname"><em>rng</em>, </td>
537         </tr>
538         <tr>
539           <td class="paramkey"></td>
540           <td></td>
541           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a> const &amp;&#160;</td>
542           <td class="paramname"><em>parameters</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a>()</code>, </td>
543         </tr>
544         <tr>
545           <td class="paramkey"></td>
546           <td></td>
547           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a> const &amp;&#160;</td>
548           <td class="paramname"><em>getter</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a>()</code>, </td>
549         </tr>
550         <tr>
551           <td class="paramkey"></td>
552           <td></td>
553           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a> const &amp;&#160;</td>
554           <td class="paramname"><em>equal</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a>()</code>, </td>
555         </tr>
556         <tr>
557           <td class="paramkey"></td>
558           <td></td>
559           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;&#160;</td>
560           <td class="paramname"><em>allocator</em> = <code><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a>()</code>&#160;</td>
561         </tr>
562         <tr>
563           <td></td>
564           <td>)</td>
565           <td></td><td></td>
566         </tr>
567       </table>
568   </td>
569   <td class="mlabels-right">
570 <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span>  </td>
571   </tr>
572 </table>
573 </div><div class="memdoc">
574
575 <p>The constructor. </p>
576 <p>The tree is created using packing algorithm.</p>
577 <dl class="params"><dt>Parameters</dt><dd>
578   <table class="params">
579     <tr><td class="paramname">rng</td><td>The range of Values. </td></tr>
580     <tr><td class="paramname">parameters</td><td>The parameters object. </td></tr>
581     <tr><td class="paramname">getter</td><td>The function object extracting Indexable from Value. </td></tr>
582     <tr><td class="paramname">equal</td><td>The function object comparing Values. </td></tr>
583     <tr><td class="paramname">allocator</td><td>The allocator object.</td></tr>
584   </table>
585   </dd>
586 </dl>
587 <dl class="section user"><dt>Throws</dt><dd><ul>
588 <li>If allocator copy constructor throws. </li>
589 <li>If Value copy constructor or copy assignment throws. </li>
590 <li>If allocation throws or returns invalid value. </li>
591 </ul>
592 </dd></dl>
593
594 </div>
595 </div>
596 <a class="anchor" id="af8db72811d2be53c409240204e63fb5a"></a>
597 <div class="memitem">
598 <div class="memproto">
599 <div class="memtemplate">
600 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
601 <table class="mlabels">
602   <tr>
603   <td class="mlabels-left">
604       <table class="memname">
605         <tr>
606           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::~<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> </td>
607           <td>(</td>
608           <td class="paramname"></td><td>)</td>
609           <td></td>
610         </tr>
611       </table>
612   </td>
613   <td class="mlabels-right">
614 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
615   </tr>
616 </table>
617 </div><div class="memdoc">
618
619 <p>The destructor. </p>
620 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
621
622 </div>
623 </div>
624 <a class="anchor" id="a826fc3236e181ad718d5283e95d7866f"></a>
625 <div class="memitem">
626 <div class="memproto">
627 <div class="memtemplate">
628 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
629 <table class="mlabels">
630   <tr>
631   <td class="mlabels-left">
632       <table class="memname">
633         <tr>
634           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> </td>
635           <td>(</td>
636           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt; const &amp;&#160;</td>
637           <td class="paramname"><em>src</em></td><td>)</td>
638           <td></td>
639         </tr>
640       </table>
641   </td>
642   <td class="mlabels-right">
643 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
644   </tr>
645 </table>
646 </div><div class="memdoc">
647
648 <p>The copy constructor. </p>
649 <p>It uses parameters, translator and allocator from the source tree.</p>
650 <dl class="params"><dt>Parameters</dt><dd>
651   <table class="params">
652     <tr><td class="paramname">src</td><td>The rtree which content will be copied.</td></tr>
653   </table>
654   </dd>
655 </dl>
656 <dl class="section user"><dt>Throws</dt><dd><ul>
657 <li>If allocator copy constructor throws. </li>
658 <li>If Value copy constructor throws. </li>
659 <li>If allocation throws or returns invalid value. </li>
660 </ul>
661 </dd></dl>
662
663 </div>
664 </div>
665 <a class="anchor" id="a72b6b75e083eea2ed26f54d4a2265375"></a>
666 <div class="memitem">
667 <div class="memproto">
668 <div class="memtemplate">
669 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
670 <table class="mlabels">
671   <tr>
672   <td class="mlabels-left">
673       <table class="memname">
674         <tr>
675           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> </td>
676           <td>(</td>
677           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt; const &amp;&#160;</td>
678           <td class="paramname"><em>src</em>, </td>
679         </tr>
680         <tr>
681           <td class="paramkey"></td>
682           <td></td>
683           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;&#160;</td>
684           <td class="paramname"><em>allocator</em>&#160;</td>
685         </tr>
686         <tr>
687           <td></td>
688           <td>)</td>
689           <td></td><td></td>
690         </tr>
691       </table>
692   </td>
693   <td class="mlabels-right">
694 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
695   </tr>
696 </table>
697 </div><div class="memdoc">
698
699 <p>The copy constructor. </p>
700 <p>It uses Parameters and translator from the source tree.</p>
701 <dl class="params"><dt>Parameters</dt><dd>
702   <table class="params">
703     <tr><td class="paramname">src</td><td>The rtree which content will be copied. </td></tr>
704     <tr><td class="paramname">allocator</td><td>The allocator which will be used.</td></tr>
705   </table>
706   </dd>
707 </dl>
708 <dl class="section user"><dt>Throws</dt><dd><ul>
709 <li>If allocator copy constructor throws. </li>
710 <li>If Value copy constructor throws. </li>
711 <li>If allocation throws or returns invalid value. </li>
712 </ul>
713 </dd></dl>
714
715 </div>
716 </div>
717 <a class="anchor" id="aa8b27db8cb783282ab5274e6769da26a"></a>
718 <div class="memitem">
719 <div class="memproto">
720 <div class="memtemplate">
721 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
722 <table class="mlabels">
723   <tr>
724   <td class="mlabels-left">
725       <table class="memname">
726         <tr>
727           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> </td>
728           <td>(</td>
729           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt; &amp;&amp;&#160;</td>
730           <td class="paramname"><em>src</em></td><td>)</td>
731           <td></td>
732         </tr>
733       </table>
734   </td>
735   <td class="mlabels-right">
736 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
737   </tr>
738 </table>
739 </div><div class="memdoc">
740
741 <p>The moving constructor. </p>
742 <p>It uses parameters, translator and allocator from the source tree.</p>
743 <dl class="params"><dt>Parameters</dt><dd>
744   <table class="params">
745     <tr><td class="paramname">src</td><td>The rtree which content will be moved.</td></tr>
746   </table>
747   </dd>
748 </dl>
749 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
750
751 </div>
752 </div>
753 <a class="anchor" id="a8508c4236d17ff39a1caef058aac8486"></a>
754 <div class="memitem">
755 <div class="memproto">
756 <div class="memtemplate">
757 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
758 <table class="mlabels">
759   <tr>
760   <td class="mlabels-left">
761       <table class="memname">
762         <tr>
763           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::<a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a> </td>
764           <td>(</td>
765           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt; &amp;&amp;&#160;</td>
766           <td class="paramname"><em>src</em>, </td>
767         </tr>
768         <tr>
769           <td class="paramkey"></td>
770           <td></td>
771           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> const &amp;&#160;</td>
772           <td class="paramname"><em>allocator</em>&#160;</td>
773         </tr>
774         <tr>
775           <td></td>
776           <td>)</td>
777           <td></td><td></td>
778         </tr>
779       </table>
780   </td>
781   <td class="mlabels-right">
782 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
783   </tr>
784 </table>
785 </div><div class="memdoc">
786
787 <p>The moving constructor. </p>
788 <p>It uses parameters and translator from the source tree.</p>
789 <dl class="params"><dt>Parameters</dt><dd>
790   <table class="params">
791     <tr><td class="paramname">src</td><td>The rtree which content will be moved. </td></tr>
792     <tr><td class="paramname">allocator</td><td>The allocator.</td></tr>
793   </table>
794   </dd>
795 </dl>
796 <dl class="section user"><dt>Throws</dt><dd><ul>
797 <li>If allocator copy constructor throws. </li>
798 <li>If Value copy constructor throws (only if allocators aren't equal). </li>
799 <li>If allocation throws or returns invalid value (only if allocators aren't equal). </li>
800 </ul>
801 </dd></dl>
802
803 </div>
804 </div>
805 <h2 class="groupheader">Member Function Documentation</h2>
806 <a class="anchor" id="a23219a7705ac491862c67be8baa34f0d"></a>
807 <div class="memitem">
808 <div class="memproto">
809 <div class="memtemplate">
810 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
811 <table class="mlabels">
812   <tr>
813   <td class="mlabels-left">
814       <table class="memname">
815         <tr>
816           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a701f65f0d6cf2e8b7be7f1c4b8fb7fde">const_iterator</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::begin </td>
817           <td>(</td>
818           <td class="paramname"></td><td>)</td>
819           <td> const</td>
820         </tr>
821       </table>
822   </td>
823   <td class="mlabels-right">
824 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
825   </tr>
826 </table>
827 </div><div class="memdoc">
828
829 <p>Returns the iterator pointing at the begin of the rtree values range. </p>
830 <p>This method returns the iterator which may be used to iterate over all values stored in the rtree.</p>
831 <dl class="section user"><dt>Example</dt><dd><pre class="fragment">// Copy all values into the vector
832 std::copy(tree.begin(), tree.end(), std::back_inserter(vec));
833
834 for ( Rtree::const_iterator it = tree.begin() ; it != tree.end() ; ++it )
835 {
836     // do something with value
837 }
838
839 // C++11 (auto)
840 for ( auto it = tree.begin() ; it != tree.end() ; ++it )
841 {
842     // do something with value
843 }
844
845 // C++14 (generic lambda expression)
846 std::for_each(tree.begin(), tree.end(), [](auto const&amp; val){
847     // do something with value
848 })
849 </pre></dd></dl>
850 <dl class="section user"><dt>Iterator category</dt><dd>ForwardIterator</dd></dl>
851 <dl class="section user"><dt>Throws</dt><dd>If allocation throws.</dd></dl>
852 <dl class="section warning"><dt>Warning</dt><dd>The modification of the rtree may invalidate the iterators.</dd></dl>
853 <dl class="section return"><dt>Returns</dt><dd>The iterator pointing at the begin of the range. </dd></dl>
854
855 </div>
856 </div>
857 <a class="anchor" id="a0dad06d0f117f45ed54b5c123cb41d6e"></a>
858 <div class="memitem">
859 <div class="memproto">
860 <div class="memtemplate">
861 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
862 <table class="mlabels">
863   <tr>
864   <td class="mlabels-left">
865       <table class="memname">
866         <tr>
867           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a12e80f9da4c68e0e687f1c2012321147">bounds_type</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::bounds </td>
868           <td>(</td>
869           <td class="paramname"></td><td>)</td>
870           <td> const</td>
871         </tr>
872       </table>
873   </td>
874   <td class="mlabels-right">
875 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
876   </tr>
877 </table>
878 </div><div class="memdoc">
879
880 <p>Returns the box able to contain all values stored in the container. </p>
881 <p>Returns the box able to contain all values stored in the container. If the container is empty the result of <code>geometry::assign_inverse()</code> is returned.</p>
882 <dl class="section return"><dt>Returns</dt><dd>The box able to contain all values stored in the container or an invalid box if there are no values in the container.</dd></dl>
883 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
884
885 </div>
886 </div>
887 <a class="anchor" id="a1bec40977c175983f585c4488cf8fe3c"></a>
888 <div class="memitem">
889 <div class="memproto">
890 <div class="memtemplate">
891 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
892 <table class="mlabels">
893   <tr>
894   <td class="mlabels-left">
895       <table class="memname">
896         <tr>
897           <td class="memname">void <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::clear </td>
898           <td>(</td>
899           <td class="paramname"></td><td>)</td>
900           <td></td>
901         </tr>
902       </table>
903   </td>
904   <td class="mlabels-right">
905 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
906   </tr>
907 </table>
908 </div><div class="memdoc">
909
910 <p>Removes all values stored in the container. </p>
911 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
912
913 </div>
914 </div>
915 <a class="anchor" id="aaa834c241c191ac9de67f134564f36fa"></a>
916 <div class="memitem">
917 <div class="memproto">
918 <div class="memtemplate">
919 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
920 <div class="memtemplate">
921 template&lt;typename ValueOrIndexable &gt; </div>
922 <table class="mlabels">
923   <tr>
924   <td class="mlabels-left">
925       <table class="memname">
926         <tr>
927           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::count </td>
928           <td>(</td>
929           <td class="paramtype">ValueOrIndexable const &amp;&#160;</td>
930           <td class="paramname"><em>vori</em></td><td>)</td>
931           <td> const</td>
932         </tr>
933       </table>
934   </td>
935   <td class="mlabels-right">
936 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
937   </tr>
938 </table>
939 </div><div class="memdoc">
940
941 <p>Count Values or Indexables stored in the container. </p>
942 <p>For indexable_type it returns the number of values which indexables equals the parameter. For value_type it returns the number of values which equals the parameter.</p>
943 <dl class="params"><dt>Parameters</dt><dd>
944   <table class="params">
945     <tr><td class="paramname">vori</td><td>The value or indexable which will be counted.</td></tr>
946   </table>
947   </dd>
948 </dl>
949 <dl class="section return"><dt>Returns</dt><dd>The number of values found.</dd></dl>
950 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
951
952 </div>
953 </div>
954 <a class="anchor" id="aa5302ce1c26105d722aac20793e83f0e"></a>
955 <div class="memitem">
956 <div class="memproto">
957 <div class="memtemplate">
958 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
959 <table class="mlabels">
960   <tr>
961   <td class="mlabels-left">
962       <table class="memname">
963         <tr>
964           <td class="memname">bool <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::empty </td>
965           <td>(</td>
966           <td class="paramname"></td><td>)</td>
967           <td> const</td>
968         </tr>
969       </table>
970   </td>
971   <td class="mlabels-right">
972 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
973   </tr>
974 </table>
975 </div><div class="memdoc">
976
977 <p>Query if the container is empty. </p>
978 <dl class="section return"><dt>Returns</dt><dd>true if the container is empty.</dd></dl>
979 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
980
981 </div>
982 </div>
983 <a class="anchor" id="a513f1bd9dfcd022acb208e62115b29b1"></a>
984 <div class="memitem">
985 <div class="memproto">
986 <div class="memtemplate">
987 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
988 <table class="mlabels">
989   <tr>
990   <td class="mlabels-left">
991       <table class="memname">
992         <tr>
993           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a701f65f0d6cf2e8b7be7f1c4b8fb7fde">const_iterator</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::end </td>
994           <td>(</td>
995           <td class="paramname"></td><td>)</td>
996           <td> const</td>
997         </tr>
998       </table>
999   </td>
1000   <td class="mlabels-right">
1001 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1002   </tr>
1003 </table>
1004 </div><div class="memdoc">
1005
1006 <p>Returns the iterator pointing at the end of the rtree values range. </p>
1007 <p>This method returns the iterator which may be compared with the iterator returned by <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a23219a7705ac491862c67be8baa34f0d" title="Returns the iterator pointing at the begin of the rtree values range. ">begin()</a> in order to check if the iteration has ended.</p>
1008 <dl class="section user"><dt>Example</dt><dd><pre class="fragment">for ( Rtree::const_iterator it = tree.begin() ; it != tree.end() ; ++it )
1009 {
1010     // do something with value
1011 }
1012
1013 // C++11 (lambda expression)
1014 std::for_each(tree.begin(), tree.end(), [](value_type const&amp; val){
1015     // do something with value
1016 })
1017 </pre></dd></dl>
1018 <dl class="section user"><dt>Iterator category</dt><dd>ForwardIterator</dd></dl>
1019 <dl class="section user"><dt>Throws</dt><dd>Nothing.</dd></dl>
1020 <dl class="section warning"><dt>Warning</dt><dd>The modification of the rtree may invalidate the iterators.</dd></dl>
1021 <dl class="section return"><dt>Returns</dt><dd>The iterator pointing at the end of the range. </dd></dl>
1022
1023 </div>
1024 </div>
1025 <a class="anchor" id="a17d9cef211feb7f674a5b4602f4cc81e"></a>
1026 <div class="memitem">
1027 <div class="memproto">
1028 <div class="memtemplate">
1029 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1030 <table class="mlabels">
1031   <tr>
1032   <td class="mlabels-left">
1033       <table class="memname">
1034         <tr>
1035           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ab6618b5c7e88ed70533233fbac0f5b2e">allocator_type</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::get_allocator </td>
1036           <td>(</td>
1037           <td class="paramname"></td><td>)</td>
1038           <td> const</td>
1039         </tr>
1040       </table>
1041   </td>
1042   <td class="mlabels-right">
1043 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1044   </tr>
1045 </table>
1046 </div><div class="memdoc">
1047
1048 <p>Returns allocator used by the rtree. </p>
1049 <dl class="section return"><dt>Returns</dt><dd>The allocator.</dd></dl>
1050 <dl class="section user"><dt>Throws</dt><dd>If allocator copy constructor throws. </dd></dl>
1051
1052 </div>
1053 </div>
1054 <a class="anchor" id="af391fd642a218c5fb10fc68d643a62b5"></a>
1055 <div class="memitem">
1056 <div class="memproto">
1057 <div class="memtemplate">
1058 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1059 <table class="mlabels">
1060   <tr>
1061   <td class="mlabels-left">
1062       <table class="memname">
1063         <tr>
1064           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a43a7adb311cafc08e23010ccb4e97fb5">indexable_getter</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::indexable_get </td>
1065           <td>(</td>
1066           <td class="paramname"></td><td>)</td>
1067           <td> const</td>
1068         </tr>
1069       </table>
1070   </td>
1071   <td class="mlabels-right">
1072 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1073   </tr>
1074 </table>
1075 </div><div class="memdoc">
1076
1077 <p>Returns function retrieving Indexable from Value. </p>
1078 <dl class="section return"><dt>Returns</dt><dd>The indexable_getter object.</dd></dl>
1079 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
1080
1081 </div>
1082 </div>
1083 <a class="anchor" id="ad47980467e66b8644df18a480dbf9d86"></a>
1084 <div class="memitem">
1085 <div class="memproto">
1086 <div class="memtemplate">
1087 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1088 <table class="mlabels">
1089   <tr>
1090   <td class="mlabels-left">
1091       <table class="memname">
1092         <tr>
1093           <td class="memname">void <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::insert </td>
1094           <td>(</td>
1095           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a5761a41d87b93d4fd548ecb6600ae757">value_type</a> const &amp;&#160;</td>
1096           <td class="paramname"><em>value</em></td><td>)</td>
1097           <td></td>
1098         </tr>
1099       </table>
1100   </td>
1101   <td class="mlabels-right">
1102 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1103   </tr>
1104 </table>
1105 </div><div class="memdoc">
1106
1107 <p>Insert a value to the index. </p>
1108 <dl class="params"><dt>Parameters</dt><dd>
1109   <table class="params">
1110     <tr><td class="paramname">value</td><td>The value which will be stored in the container.</td></tr>
1111   </table>
1112   </dd>
1113 </dl>
1114 <dl class="section user"><dt>Throws</dt><dd><ul>
1115 <li>If Value copy constructor or copy assignment throws. </li>
1116 <li>If allocation throws or returns invalid value.</li>
1117 </ul>
1118 </dd></dl>
1119 <dl class="section warning"><dt>Warning</dt><dd>This operation only guarantees that there will be no memory leaks. After an exception is thrown the R-tree may be left in an inconsistent state, elements must not be inserted or removed. Other operations are allowed however some of them may return invalid data. </dd></dl>
1120
1121 </div>
1122 </div>
1123 <a class="anchor" id="a60d4c8790fd8810ff8b57f049e6bed8d"></a>
1124 <div class="memitem">
1125 <div class="memproto">
1126 <div class="memtemplate">
1127 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1128 <div class="memtemplate">
1129 template&lt;typename Iterator &gt; </div>
1130 <table class="mlabels">
1131   <tr>
1132   <td class="mlabels-left">
1133       <table class="memname">
1134         <tr>
1135           <td class="memname">void <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::insert </td>
1136           <td>(</td>
1137           <td class="paramtype">Iterator&#160;</td>
1138           <td class="paramname"><em>first</em>, </td>
1139         </tr>
1140         <tr>
1141           <td class="paramkey"></td>
1142           <td></td>
1143           <td class="paramtype">Iterator&#160;</td>
1144           <td class="paramname"><em>last</em>&#160;</td>
1145         </tr>
1146         <tr>
1147           <td></td>
1148           <td>)</td>
1149           <td></td><td></td>
1150         </tr>
1151       </table>
1152   </td>
1153   <td class="mlabels-right">
1154 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1155   </tr>
1156 </table>
1157 </div><div class="memdoc">
1158
1159 <p>Insert a range of values to the index. </p>
1160 <dl class="params"><dt>Parameters</dt><dd>
1161   <table class="params">
1162     <tr><td class="paramname">first</td><td>The beginning of the range of values. </td></tr>
1163     <tr><td class="paramname">last</td><td>The end of the range of values.</td></tr>
1164   </table>
1165   </dd>
1166 </dl>
1167 <dl class="section user"><dt>Throws</dt><dd><ul>
1168 <li>If Value copy constructor or copy assignment throws. </li>
1169 <li>If allocation throws or returns invalid value.</li>
1170 </ul>
1171 </dd></dl>
1172 <dl class="section warning"><dt>Warning</dt><dd>This operation only guarantees that there will be no memory leaks. After an exception is thrown the R-tree may be left in an inconsistent state, elements must not be inserted or removed. Other operations are allowed however some of them may return invalid data. </dd></dl>
1173
1174 </div>
1175 </div>
1176 <a class="anchor" id="a5db294b14ebf1319edcfc92e78c8167e"></a>
1177 <div class="memitem">
1178 <div class="memproto">
1179 <div class="memtemplate">
1180 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1181 <div class="memtemplate">
1182 template&lt;typename ConvertibleOrRange &gt; </div>
1183 <table class="mlabels">
1184   <tr>
1185   <td class="mlabels-left">
1186       <table class="memname">
1187         <tr>
1188           <td class="memname">void <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::insert </td>
1189           <td>(</td>
1190           <td class="paramtype">ConvertibleOrRange const &amp;&#160;</td>
1191           <td class="paramname"><em>conv_or_rng</em></td><td>)</td>
1192           <td></td>
1193         </tr>
1194       </table>
1195   </td>
1196   <td class="mlabels-right">
1197 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1198   </tr>
1199 </table>
1200 </div><div class="memdoc">
1201
1202 <p>Insert a value created using convertible object or a range of values to the index. </p>
1203 <dl class="params"><dt>Parameters</dt><dd>
1204   <table class="params">
1205     <tr><td class="paramname">conv_or_rng</td><td>An object of type convertible to value_type or a range of values.</td></tr>
1206   </table>
1207   </dd>
1208 </dl>
1209 <dl class="section user"><dt>Throws</dt><dd><ul>
1210 <li>If Value copy constructor or copy assignment throws. </li>
1211 <li>If allocation throws or returns invalid value.</li>
1212 </ul>
1213 </dd></dl>
1214 <dl class="section warning"><dt>Warning</dt><dd>This operation only guarantees that there will be no memory leaks. After an exception is thrown the R-tree may be left in an inconsistent state, elements must not be inserted or removed. Other operations are allowed however some of them may return invalid data. </dd></dl>
1215
1216 </div>
1217 </div>
1218 <a class="anchor" id="ad0db5e9e41e1553f944b7e740dbbb883"></a>
1219 <div class="memitem">
1220 <div class="memproto">
1221 <div class="memtemplate">
1222 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1223 <table class="mlabels">
1224   <tr>
1225   <td class="mlabels-left">
1226       <table class="memname">
1227         <tr>
1228           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a>&amp; <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::operator= </td>
1229           <td>(</td>
1230           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt; const &amp;&#160;</td>
1231           <td class="paramname"><em>src</em></td><td>)</td>
1232           <td></td>
1233         </tr>
1234       </table>
1235   </td>
1236   <td class="mlabels-right">
1237 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1238   </tr>
1239 </table>
1240 </div><div class="memdoc">
1241
1242 <p>The assignment operator. </p>
1243 <p>It uses parameters and translator from the source tree.</p>
1244 <dl class="params"><dt>Parameters</dt><dd>
1245   <table class="params">
1246     <tr><td class="paramname">src</td><td>The rtree which content will be copied.</td></tr>
1247   </table>
1248   </dd>
1249 </dl>
1250 <dl class="section user"><dt>Throws</dt><dd><ul>
1251 <li>If Value copy constructor throws. </li>
1252 <li>If allocation throws. </li>
1253 <li>If allocation throws or returns invalid value. </li>
1254 </ul>
1255 </dd></dl>
1256
1257 </div>
1258 </div>
1259 <a class="anchor" id="af0bf9622ed3e901580b73ed39b746fb7"></a>
1260 <div class="memitem">
1261 <div class="memproto">
1262 <div class="memtemplate">
1263 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1264 <table class="mlabels">
1265   <tr>
1266   <td class="mlabels-left">
1267       <table class="memname">
1268         <tr>
1269           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a>&amp; <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::operator= </td>
1270           <td>(</td>
1271           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt; &amp;&amp;&#160;</td>
1272           <td class="paramname"><em>src</em></td><td>)</td>
1273           <td></td>
1274         </tr>
1275       </table>
1276   </td>
1277   <td class="mlabels-right">
1278 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1279   </tr>
1280 </table>
1281 </div><div class="memdoc">
1282
1283 <p>The moving assignment. </p>
1284 <p>It uses parameters and translator from the source tree.</p>
1285 <dl class="params"><dt>Parameters</dt><dd>
1286   <table class="params">
1287     <tr><td class="paramname">src</td><td>The rtree which content will be moved.</td></tr>
1288   </table>
1289   </dd>
1290 </dl>
1291 <dl class="section user"><dt>Throws</dt><dd>Only if allocators aren't equal. <ul>
1292 <li>If Value copy constructor throws. </li>
1293 <li>If allocation throws or returns invalid value. </li>
1294 </ul>
1295 </dd></dl>
1296
1297 </div>
1298 </div>
1299 <a class="anchor" id="a9076baef90a3a9c6018871fa25115a73"></a>
1300 <div class="memitem">
1301 <div class="memproto">
1302 <div class="memtemplate">
1303 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1304 <table class="mlabels">
1305   <tr>
1306   <td class="mlabels-left">
1307       <table class="memname">
1308         <tr>
1309           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a80db5532eb59f7a809bd44ded265eb17">parameters_type</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::parameters </td>
1310           <td>(</td>
1311           <td class="paramname"></td><td>)</td>
1312           <td> const</td>
1313         </tr>
1314       </table>
1315   </td>
1316   <td class="mlabels-right">
1317 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1318   </tr>
1319 </table>
1320 </div><div class="memdoc">
1321
1322 <p>Returns parameters. </p>
1323 <dl class="section return"><dt>Returns</dt><dd>The parameters object.</dd></dl>
1324 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
1325
1326 </div>
1327 </div>
1328 <a class="anchor" id="a63d15f3b5b157a47045fcac3fec3b7a0"></a>
1329 <div class="memitem">
1330 <div class="memproto">
1331 <div class="memtemplate">
1332 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1333 <div class="memtemplate">
1334 template&lt;typename Predicates &gt; </div>
1335 <table class="mlabels">
1336   <tr>
1337   <td class="mlabels-left">
1338       <table class="memname">
1339         <tr>
1340           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad144a7704ad878caaa84cda79b140855">const_query_iterator</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::qbegin </td>
1341           <td>(</td>
1342           <td class="paramtype">Predicates const &amp;&#160;</td>
1343           <td class="paramname"><em>predicates</em></td><td>)</td>
1344           <td> const</td>
1345         </tr>
1346       </table>
1347   </td>
1348   <td class="mlabels-right">
1349 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1350   </tr>
1351 </table>
1352 </div><div class="memdoc">
1353
1354 <p>Returns a query iterator pointing at the begin of the query range. </p>
1355 <p>This method returns an iterator which may be used to perform iterative queries. For the information about predicates which may be passed to this method see <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a7baa88eb4e7a5c640ab847513de45b3e" title="Finds values meeting passed predicates e.g. nearest to some Point and/or intersecting some Box...">query()</a>.</p>
1356 <dl class="section user"><dt>Example</dt><dd><pre class="fragment">for ( Rtree::const_query_iterator it = tree.qbegin(bgi::nearest(pt, 10000)) ;
1357       it != tree.qend() ; ++it )
1358 {
1359     // do something with value
1360     if ( has_enough_nearest_values() )
1361         break;
1362 }
1363
1364 // C++11 (auto)
1365 for ( auto it = tree.qbegin(bgi::nearest(pt, 3)) ; it != tree.qend() ; ++it )
1366 {
1367     // do something with value
1368 }
1369
1370 // C++14 (generic lambda expression)
1371 std::for_each(tree.qbegin(bgi::nearest(pt, 3)), tree.qend(), [](auto const&amp; val){
1372     // do something with value
1373 });
1374 </pre></dd></dl>
1375 <dl class="section user"><dt>Iterator category</dt><dd>ForwardIterator</dd></dl>
1376 <dl class="section user"><dt>Throws</dt><dd>If predicates copy throws. If allocation throws.</dd></dl>
1377 <dl class="section warning"><dt>Warning</dt><dd>The modification of the rtree may invalidate the iterators.</dd></dl>
1378 <dl class="params"><dt>Parameters</dt><dd>
1379   <table class="params">
1380     <tr><td class="paramname">predicates</td><td>Predicates.</td></tr>
1381   </table>
1382   </dd>
1383 </dl>
1384 <dl class="section return"><dt>Returns</dt><dd>The iterator pointing at the begin of the query range. </dd></dl>
1385
1386 </div>
1387 </div>
1388 <a class="anchor" id="af3b16f4732fa8113c0b2187005182513"></a>
1389 <div class="memitem">
1390 <div class="memproto">
1391 <div class="memtemplate">
1392 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1393 <table class="mlabels">
1394   <tr>
1395   <td class="mlabels-left">
1396       <table class="memname">
1397         <tr>
1398           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad144a7704ad878caaa84cda79b140855">const_query_iterator</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::qend </td>
1399           <td>(</td>
1400           <td class="paramname"></td><td>)</td>
1401           <td> const</td>
1402         </tr>
1403       </table>
1404   </td>
1405   <td class="mlabels-right">
1406 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1407   </tr>
1408 </table>
1409 </div><div class="memdoc">
1410
1411 <p>Returns a query iterator pointing at the end of the query range. </p>
1412 <p>This method returns an iterator which may be used to check if the query has ended.</p>
1413 <dl class="section user"><dt>Example</dt><dd><pre class="fragment">for ( Rtree::const_query_iterator it = tree.qbegin(bgi::nearest(pt, 10000)) ;
1414       it != tree.qend() ; ++it )
1415 {
1416     // do something with value
1417     if ( has_enough_nearest_values() )
1418         break;
1419 }
1420
1421 // C++11 (auto)
1422 for ( auto it = tree.qbegin(bgi::nearest(pt, 3)) ; it != tree.qend() ; ++it )
1423 {
1424     // do something with value
1425 }
1426
1427 // C++14 (generic lambda expression)
1428 std::for_each(tree.qbegin(bgi::nearest(pt, 3)), tree.qend(), [](auto const&amp; val){
1429     // do something with value
1430 });
1431 </pre></dd></dl>
1432 <dl class="section user"><dt>Iterator category</dt><dd>ForwardIterator</dd></dl>
1433 <dl class="section user"><dt>Throws</dt><dd>Nothing</dd></dl>
1434 <dl class="section warning"><dt>Warning</dt><dd>The modification of the rtree may invalidate the iterators.</dd></dl>
1435 <dl class="section return"><dt>Returns</dt><dd>The iterator pointing at the end of the query range. </dd></dl>
1436
1437 </div>
1438 </div>
1439 <a class="anchor" id="a7baa88eb4e7a5c640ab847513de45b3e"></a>
1440 <div class="memitem">
1441 <div class="memproto">
1442 <div class="memtemplate">
1443 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1444 <div class="memtemplate">
1445 template&lt;typename Predicates , typename OutIter &gt; </div>
1446 <table class="mlabels">
1447   <tr>
1448   <td class="mlabels-left">
1449       <table class="memname">
1450         <tr>
1451           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::query </td>
1452           <td>(</td>
1453           <td class="paramtype">Predicates const &amp;&#160;</td>
1454           <td class="paramname"><em>predicates</em>, </td>
1455         </tr>
1456         <tr>
1457           <td class="paramkey"></td>
1458           <td></td>
1459           <td class="paramtype">OutIter&#160;</td>
1460           <td class="paramname"><em>out_it</em>&#160;</td>
1461         </tr>
1462         <tr>
1463           <td></td>
1464           <td>)</td>
1465           <td></td><td> const</td>
1466         </tr>
1467       </table>
1468   </td>
1469   <td class="mlabels-right">
1470 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1471   </tr>
1472 </table>
1473 </div><div class="memdoc">
1474
1475 <p>Finds values meeting passed predicates e.g. nearest to some Point and/or intersecting some Box. </p>
1476 <p>This query function performs spatial and k-nearest neighbor searches. It allows to pass a set of predicates. Values will be returned only if all predicates are met.</p>
1477 <p><b>Spatial predicates</b></p>
1478 <p>Spatial predicates may be generated by one of the functions listed below: </p>
1479 <ul>
1480 <li><code><a class="el" href="group__predicates.html#gac52a6557110425d4ece53fbd6f9ff866" title="Generate contains() predicate. ">boost::geometry::index::contains()</a></code>, </li>
1481 <li><code><a class="el" href="group__predicates.html#ga02dbb7cca47de0b921ef96af464d9590" title="Generate covered_by() predicate. ">boost::geometry::index::covered_by()</a></code>, </li>
1482 <li><code><a class="el" href="group__predicates.html#ga0e92e4a20dd19185584fe85847439108" title="Generate covers() predicate. ">boost::geometry::index::covers()</a></code>, </li>
1483 <li><code><a class="el" href="group__predicates.html#ga0aa114ab16f40c8caeb3338adba5d6da" title="Generate disjoint() predicate. ">boost::geometry::index::disjoint()</a></code>, </li>
1484 <li><code><a class="el" href="group__predicates.html#ga78cb2ef221b951867c591ffb51b7d8c5" title="Generate intersects() predicate. ">boost::geometry::index::intersects()</a></code>, </li>
1485 <li><code><a class="el" href="group__predicates.html#ga4a6d33e6f61ad5bff3bdee50a972d54b" title="Generate overlaps() predicate. ">boost::geometry::index::overlaps()</a></code>, </li>
1486 <li><code><a class="el" href="group__predicates.html#gaabce901b82af2aab10ebbd0dda12f4d5" title="Generate within() predicate. ">boost::geometry::index::within()</a></code>,</li>
1487 </ul>
1488 <p>It is possible to negate spatial predicates: </p>
1489 <ul>
1490 <li><code>! <a class="el" href="group__predicates.html#gac52a6557110425d4ece53fbd6f9ff866" title="Generate contains() predicate. ">boost::geometry::index::contains()</a></code>, </li>
1491 <li><code>! <a class="el" href="group__predicates.html#ga02dbb7cca47de0b921ef96af464d9590" title="Generate covered_by() predicate. ">boost::geometry::index::covered_by()</a></code>, </li>
1492 <li><code>! <a class="el" href="group__predicates.html#ga0e92e4a20dd19185584fe85847439108" title="Generate covers() predicate. ">boost::geometry::index::covers()</a></code>, </li>
1493 <li><code>! <a class="el" href="group__predicates.html#ga0aa114ab16f40c8caeb3338adba5d6da" title="Generate disjoint() predicate. ">boost::geometry::index::disjoint()</a></code>, </li>
1494 <li><code>! <a class="el" href="group__predicates.html#ga78cb2ef221b951867c591ffb51b7d8c5" title="Generate intersects() predicate. ">boost::geometry::index::intersects()</a></code>, </li>
1495 <li><code>! <a class="el" href="group__predicates.html#ga4a6d33e6f61ad5bff3bdee50a972d54b" title="Generate overlaps() predicate. ">boost::geometry::index::overlaps()</a></code>, </li>
1496 <li><code>! <a class="el" href="group__predicates.html#gaabce901b82af2aab10ebbd0dda12f4d5" title="Generate within() predicate. ">boost::geometry::index::within()</a></code></li>
1497 </ul>
1498 <p><b>Satisfies predicate</b></p>
1499 <p>This is a special kind of predicate which allows to pass a user-defined function or function object which checks if Value should be returned by the query. It's generated by: </p>
1500 <ul>
1501 <li><code><a class="el" href="group__predicates.html#ga3213772dd3e54ad03340c2ca66b4f58c" title="Generate satisfies() predicate. ">boost::geometry::index::satisfies()</a></code>.</li>
1502 </ul>
1503 <p><b>Nearest predicate</b></p>
1504 <p>If the nearest predicate is passed a k-nearest neighbor search will be performed. This query will result in returning k values to the output iterator. Only one nearest predicate may be passed to the query. It may be generated by: </p>
1505 <ul>
1506 <li><code><a class="el" href="group__predicates.html#ga8772d9d3e5b12b3292f7d94d47310e3e" title="Generate nearest() predicate. ">boost::geometry::index::nearest()</a></code>.</li>
1507 </ul>
1508 <p><b>Connecting predicates</b></p>
1509 <p>Predicates may be passed together connected with <code>operator&amp;&amp;()</code>.</p>
1510 <dl class="section user"><dt>Example</dt><dd><pre class="fragment">// return elements intersecting box
1511 tree.query(bgi::intersects(box), std::back_inserter(result));
1512 // return elements intersecting poly but not within box
1513 tree.query(bgi::intersects(poly) &amp;&amp; !bgi::within(box), std::back_inserter(result));
1514 // return elements overlapping box and meeting my_fun unary predicate
1515 tree.query(bgi::overlaps(box) &amp;&amp; bgi::satisfies(my_fun), std::back_inserter(result));
1516 // return 5 elements nearest to pt and elements are intersecting box
1517 tree.query(bgi::nearest(pt, 5) &amp;&amp; bgi::intersects(box), std::back_inserter(result));
1518
1519 // For each found value do_something (it is a type of function object)
1520 tree.query(bgi::intersects(box),
1521            boost::make_function_output_iterator(do_something()));
1522
1523 // For each value stored in the rtree do_something
1524 // always_true is a type of function object always returning true
1525 tree.query(bgi::satisfies(always_true()),
1526            boost::make_function_output_iterator(do_something()));
1527
1528 // C++11 (lambda expression)
1529 tree.query(bgi::intersects(box),
1530            boost::make_function_output_iterator([](value_type const&amp; val){
1531                // do something
1532            }));
1533
1534 // C++14 (generic lambda expression)
1535 tree.query(bgi::intersects(box),
1536            boost::make_function_output_iterator([](auto const&amp; val){
1537                // do something
1538            }));
1539 </pre></dd></dl>
1540 <dl class="section user"><dt>Throws</dt><dd>If Value copy constructor or copy assignment throws. If predicates copy throws.</dd></dl>
1541 <dl class="section warning"><dt>Warning</dt><dd>Only one <code><a class="el" href="group__predicates.html#ga8772d9d3e5b12b3292f7d94d47310e3e" title="Generate nearest() predicate. ">nearest()</a></code> perdicate may be passed to the query. Passing more of them results in compile-time error.</dd></dl>
1542 <dl class="params"><dt>Parameters</dt><dd>
1543   <table class="params">
1544     <tr><td class="paramname">predicates</td><td>Predicates. </td></tr>
1545     <tr><td class="paramname">out_it</td><td>The output iterator, e.g. generated by std::back_inserter().</td></tr>
1546   </table>
1547   </dd>
1548 </dl>
1549 <dl class="section return"><dt>Returns</dt><dd>The number of values found. </dd></dl>
1550
1551 </div>
1552 </div>
1553 <a class="anchor" id="a1ce933b0b833faec5349bfc27bde15d4"></a>
1554 <div class="memitem">
1555 <div class="memproto">
1556 <div class="memtemplate">
1557 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1558 <table class="mlabels">
1559   <tr>
1560   <td class="mlabels-left">
1561       <table class="memname">
1562         <tr>
1563           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::remove </td>
1564           <td>(</td>
1565           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#a5761a41d87b93d4fd548ecb6600ae757">value_type</a> const &amp;&#160;</td>
1566           <td class="paramname"><em>value</em></td><td>)</td>
1567           <td></td>
1568         </tr>
1569       </table>
1570   </td>
1571   <td class="mlabels-right">
1572 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1573   </tr>
1574 </table>
1575 </div><div class="memdoc">
1576
1577 <p>Remove a value from the container. </p>
1578 <p>In contrast to the <code>std::set</code> or <code>std::map erase()</code> method this method removes only one value from the container.</p>
1579 <dl class="params"><dt>Parameters</dt><dd>
1580   <table class="params">
1581     <tr><td class="paramname">value</td><td>The value which will be removed from the container.</td></tr>
1582   </table>
1583   </dd>
1584 </dl>
1585 <dl class="section return"><dt>Returns</dt><dd>1 if the value was removed, 0 otherwise.</dd></dl>
1586 <dl class="section user"><dt>Throws</dt><dd><ul>
1587 <li>If Value copy constructor or copy assignment throws. </li>
1588 <li>If allocation throws or returns invalid value.</li>
1589 </ul>
1590 </dd></dl>
1591 <dl class="section warning"><dt>Warning</dt><dd>This operation only guarantees that there will be no memory leaks. After an exception is thrown the R-tree may be left in an inconsistent state, elements must not be inserted or removed. Other operations are allowed however some of them may return invalid data. </dd></dl>
1592
1593 </div>
1594 </div>
1595 <a class="anchor" id="aa97084231d17564a94f0142d095cecaa"></a>
1596 <div class="memitem">
1597 <div class="memproto">
1598 <div class="memtemplate">
1599 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1600 <div class="memtemplate">
1601 template&lt;typename Iterator &gt; </div>
1602 <table class="mlabels">
1603   <tr>
1604   <td class="mlabels-left">
1605       <table class="memname">
1606         <tr>
1607           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::remove </td>
1608           <td>(</td>
1609           <td class="paramtype">Iterator&#160;</td>
1610           <td class="paramname"><em>first</em>, </td>
1611         </tr>
1612         <tr>
1613           <td class="paramkey"></td>
1614           <td></td>
1615           <td class="paramtype">Iterator&#160;</td>
1616           <td class="paramname"><em>last</em>&#160;</td>
1617         </tr>
1618         <tr>
1619           <td></td>
1620           <td>)</td>
1621           <td></td><td></td>
1622         </tr>
1623       </table>
1624   </td>
1625   <td class="mlabels-right">
1626 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1627   </tr>
1628 </table>
1629 </div><div class="memdoc">
1630
1631 <p>Remove a range of values from the container. </p>
1632 <p>In contrast to the <code>std::set</code> or <code>std::map erase()</code> method it doesn't take iterators pointing to values stored in this container. It removes values equal to these passed as a range. Furthermore this method removes only one value for each one passed in the range, not all equal values.</p>
1633 <dl class="params"><dt>Parameters</dt><dd>
1634   <table class="params">
1635     <tr><td class="paramname">first</td><td>The beginning of the range of values. </td></tr>
1636     <tr><td class="paramname">last</td><td>The end of the range of values.</td></tr>
1637   </table>
1638   </dd>
1639 </dl>
1640 <dl class="section return"><dt>Returns</dt><dd>The number of removed values.</dd></dl>
1641 <dl class="section user"><dt>Throws</dt><dd><ul>
1642 <li>If Value copy constructor or copy assignment throws. </li>
1643 <li>If allocation throws or returns invalid value.</li>
1644 </ul>
1645 </dd></dl>
1646 <dl class="section warning"><dt>Warning</dt><dd>This operation only guarantees that there will be no memory leaks. After an exception is thrown the R-tree may be left in an inconsistent state, elements must not be inserted or removed. Other operations are allowed however some of them may return invalid data. </dd></dl>
1647
1648 </div>
1649 </div>
1650 <a class="anchor" id="a320cd1861ba7b43364ed53e1f93a4411"></a>
1651 <div class="memitem">
1652 <div class="memproto">
1653 <div class="memtemplate">
1654 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1655 <div class="memtemplate">
1656 template&lt;typename ConvertibleOrRange &gt; </div>
1657 <table class="mlabels">
1658   <tr>
1659   <td class="mlabels-left">
1660       <table class="memname">
1661         <tr>
1662           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::remove </td>
1663           <td>(</td>
1664           <td class="paramtype">ConvertibleOrRange const &amp;&#160;</td>
1665           <td class="paramname"><em>conv_or_rng</em></td><td>)</td>
1666           <td></td>
1667         </tr>
1668       </table>
1669   </td>
1670   <td class="mlabels-right">
1671 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1672   </tr>
1673 </table>
1674 </div><div class="memdoc">
1675
1676 <p>Remove value corresponding to an object convertible to it or a range of values from the container. </p>
1677 <p>In contrast to the <code>std::set</code> or <code>std::map erase()</code> method it removes values equal to these passed as a range. Furthermore, this method removes only one value for each one passed in the range, not all equal values.</p>
1678 <dl class="params"><dt>Parameters</dt><dd>
1679   <table class="params">
1680     <tr><td class="paramname">conv_or_rng</td><td>The object of type convertible to value_type or a range of values.</td></tr>
1681   </table>
1682   </dd>
1683 </dl>
1684 <dl class="section return"><dt>Returns</dt><dd>The number of removed values.</dd></dl>
1685 <dl class="section user"><dt>Throws</dt><dd><ul>
1686 <li>If Value copy constructor or copy assignment throws. </li>
1687 <li>If allocation throws or returns invalid value.</li>
1688 </ul>
1689 </dd></dl>
1690 <dl class="section warning"><dt>Warning</dt><dd>This operation only guarantees that there will be no memory leaks. After an exception is thrown the R-tree may be left in an inconsistent state, elements must not be inserted or removed. Other operations are allowed however some of them may return invalid data. </dd></dl>
1691
1692 </div>
1693 </div>
1694 <a class="anchor" id="ac9f152c8c96525e3735b81635d8171b1"></a>
1695 <div class="memitem">
1696 <div class="memproto">
1697 <div class="memtemplate">
1698 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1699 <table class="mlabels">
1700   <tr>
1701   <td class="mlabels-left">
1702       <table class="memname">
1703         <tr>
1704           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#acc1f90d7b70afebc58107c523ece5cd5">size_type</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::size </td>
1705           <td>(</td>
1706           <td class="paramname"></td><td>)</td>
1707           <td> const</td>
1708         </tr>
1709       </table>
1710   </td>
1711   <td class="mlabels-right">
1712 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1713   </tr>
1714 </table>
1715 </div><div class="memdoc">
1716
1717 <p>Returns the number of stored values. </p>
1718 <dl class="section return"><dt>Returns</dt><dd>The number of stored values.</dd></dl>
1719 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
1720
1721 </div>
1722 </div>
1723 <a class="anchor" id="aedb719dfece91d298e9ee56878524c9b"></a>
1724 <div class="memitem">
1725 <div class="memproto">
1726 <div class="memtemplate">
1727 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1728 <table class="mlabels">
1729   <tr>
1730   <td class="mlabels-left">
1731       <table class="memname">
1732         <tr>
1733           <td class="memname">void <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::swap </td>
1734           <td>(</td>
1735           <td class="paramtype"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt; &amp;&#160;</td>
1736           <td class="paramname"><em>other</em></td><td>)</td>
1737           <td></td>
1738         </tr>
1739       </table>
1740   </td>
1741   <td class="mlabels-right">
1742 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1743   </tr>
1744 </table>
1745 </div><div class="memdoc">
1746
1747 <p>Swaps contents of two rtrees. </p>
1748 <p>Parameters, translator and allocators are swapped as well.</p>
1749 <dl class="params"><dt>Parameters</dt><dd>
1750   <table class="params">
1751     <tr><td class="paramname">other</td><td>The rtree which content will be swapped with this rtree content.</td></tr>
1752   </table>
1753   </dd>
1754 </dl>
1755 <dl class="section user"><dt>Throws</dt><dd>If allocators swap throws. </dd></dl>
1756
1757 </div>
1758 </div>
1759 <a class="anchor" id="a16424563d0973960ac01f7a1969eeebe"></a>
1760 <div class="memitem">
1761 <div class="memproto">
1762 <div class="memtemplate">
1763 template&lt;typename Value, typename Parameters, typename IndexableGetter = index::indexable&lt;Value&gt;, typename EqualTo = index::equal_to&lt;Value&gt;, typename Allocator = std::allocator&lt;Value&gt;&gt; </div>
1764 <table class="mlabels">
1765   <tr>
1766   <td class="mlabels-left">
1767       <table class="memname">
1768         <tr>
1769           <td class="memname"><a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html#ad8fe544de514014a1bd87ea1b881ff9b">value_equal</a> <a class="el" href="classboost_1_1geometry_1_1index_1_1rtree.html">boost::geometry::index::rtree</a>&lt; Value, Parameters, IndexableGetter, EqualTo, Allocator &gt;::value_eq </td>
1770           <td>(</td>
1771           <td class="paramname"></td><td>)</td>
1772           <td> const</td>
1773         </tr>
1774       </table>
1775   </td>
1776   <td class="mlabels-right">
1777 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
1778   </tr>
1779 </table>
1780 </div><div class="memdoc">
1781
1782 <p>Returns function comparing Values. </p>
1783 <dl class="section return"><dt>Returns</dt><dd>The value_equal function.</dd></dl>
1784 <dl class="section user"><dt>Throws</dt><dd>Nothing. </dd></dl>
1785
1786 </div>
1787 </div>
1788 <hr/>The documentation for this class was generated from the following file:<ul>
1789 <li>/home/ubuntu/boost/boost/geometry/index/<a class="el" href="rtree_8hpp_source.html">rtree.hpp</a></li>
1790 </ul>
1791 </div><!-- contents -->
1792 <!-- start footer part -->
1793 <hr class="footer"/><address class="footer"><small>
1794 Generated on Thu Dec 22 2016 12:40:17 for Boost.Geometry.Index by &#160;<a href="http://www.doxygen.org/index.html">
1795 <img class="footer" src="doxygen.png" alt="doxygen"/>
1796 </a> 1.8.6
1797 </small></address>
1798 </body>
1799 </html>