1 | Program received signal SIGSEGV, Segmentation fault.
|
---|
2 | 0x0000000000454498 in boost::geometry::dispatch::convert<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::box_tag, boost::geometry::box_tag, 3ul, true>::apply (source=..., destination=...)
|
---|
3 | at /homepath/local_4.8.2/include/boost/geometry/algorithms/convert.hpp:295
|
---|
4 | 295 destination = source;
|
---|
5 | (gdb) list
|
---|
6 | 290 struct convert<Geometry1, Geometry2, Tag, Tag, DimensionCount, true>
|
---|
7 | 291 {
|
---|
8 | 292 // Same geometry type -> copy whole geometry
|
---|
9 | 293 static inline void apply(Geometry1 const& source, Geometry2& destination)
|
---|
10 | 294 {
|
---|
11 | 295 destination = source;
|
---|
12 | 296 }
|
---|
13 | 297 };
|
---|
14 | 298
|
---|
15 | 299
|
---|
16 | (gdb) print source
|
---|
17 | $5 = (const boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > &) @0x3d7042f4c05b7931: <error reading variable>
|
---|
18 | (gdb) up
|
---|
19 | #1 0x0000000000453717 in boost::geometry::resolve_variant::convert<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > >::apply (geometry1=..., geometry2=...)
|
---|
20 | at /homepath/local_4.8.2/include/boost/geometry/algorithms/convert.hpp:498
|
---|
21 | 498 dispatch::convert<Geometry1, Geometry2>::apply(geometry1, geometry2);
|
---|
22 | (gdb) list
|
---|
23 | 493 struct convert
|
---|
24 | 494 {
|
---|
25 | 495 static inline void apply(Geometry1 const& geometry1, Geometry2& geometry2)
|
---|
26 | 496 {
|
---|
27 | 497 concepts::check_concepts_and_equal_dimensions<Geometry1 const, Geometry2>();
|
---|
28 | 498 dispatch::convert<Geometry1, Geometry2>::apply(geometry1, geometry2);
|
---|
29 | 499 }
|
---|
30 | 500 };
|
---|
31 | 501
|
---|
32 | 502 template <BOOST_VARIANT_ENUM_PARAMS(typename T), typename Geometry2>
|
---|
33 | (gdb) print geometry1
|
---|
34 | $6 = (const boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > &) @0x3d7042f4c05b7931: <error reading variable>
|
---|
35 | (gdb) print geometry2
|
---|
36 | $7 = (boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > &) @0x7fffffff8ad4: {m_min_corner = {m_values = {4.59163468e-41,
|
---|
37 | -nan(0x7f8b00), 4.59163468e-41}}, m_max_corner = {m_values = {-nan(0x7f8b10), 4.59163468e-41, 2.80259693e-45}}}
|
---|
38 | (gdb) up
|
---|
39 | #2 0x0000000000452a51 in boost::geometry::convert<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > > (geometry1=..., geometry2=...) at /homepath/local_4.8.2/include/boost/geometry/algorithms/convert.hpp:550
|
---|
40 | 550 resolve_variant::convert<Geometry1, Geometry2>::apply(geometry1, geometry2);
|
---|
41 | (gdb) list
|
---|
42 | 545 \qbk{[include reference/algorithms/convert.qbk]}
|
---|
43 | 546 */
|
---|
44 | 547 template <typename Geometry1, typename Geometry2>
|
---|
45 | 548 inline void convert(Geometry1 const& geometry1, Geometry2& geometry2)
|
---|
46 | 549 {
|
---|
47 | 550 resolve_variant::convert<Geometry1, Geometry2>::apply(geometry1, geometry2);
|
---|
48 | 551 }
|
---|
49 | 552
|
---|
50 | 553 #if defined(_MSC_VER)
|
---|
51 | 554 #pragma warning(pop)
|
---|
52 | (gdb) up
|
---|
53 | #3 0x00000000004519a4 in boost::geometry::index::detail::dispatch::bounds<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::box_tag, boost::geometry::box_tag>::apply (g=..., b=...)
|
---|
54 | at /homepath/local_4.8.2/include/boost/geometry/index/detail/algorithms/bounds.hpp:28
|
---|
55 | 28 geometry::convert(g, b);
|
---|
56 | (gdb) list
|
---|
57 | 23 typename TagBounds = typename geometry::tag<Bounds>::type>
|
---|
58 | 24 struct bounds
|
---|
59 | 25 {
|
---|
60 | 26 static inline void apply(Geometry const& g, Bounds & b)
|
---|
61 | 27 {
|
---|
62 | 28 geometry::convert(g, b);
|
---|
63 | 29 }
|
---|
64 | 30 };
|
---|
65 | 31
|
---|
66 | 32 template <typename Geometry, typename Bounds>
|
---|
67 | (gdb) pring g
|
---|
68 | Undefined command: "pring". Try "help".
|
---|
69 | (gdb) print g
|
---|
70 | $8 = (const boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > &) @0x3d7042f4c05b7931: <error reading variable>
|
---|
71 | (gdb) print b
|
---|
72 | $9 = (boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > &) @0x7fffffff8ad4: {m_min_corner = {m_values = {4.59163468e-41,
|
---|
73 | -nan(0x7f8b00), 4.59163468e-41}}, m_max_corner = {m_values = {-nan(0x7f8b10), 4.59163468e-41, 2.80259693e-45}}}
|
---|
74 | (gdb) up
|
---|
75 | #4 0x0000000000450b4f in boost::geometry::index::detail::bounds<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > > (g=..., b=...)
|
---|
76 | at /homepath/local_4.8.2/include/boost/geometry/index/detail/algorithms/bounds.hpp:48
|
---|
77 | 48 dispatch::bounds<Geometry, Bounds>::apply(g, b);
|
---|
78 | (gdb) list
|
---|
79 | 43
|
---|
80 | 44 template <typename Geometry, typename Bounds>
|
---|
81 | 45 inline void bounds(Geometry const& g, Bounds & b)
|
---|
82 | 46 {
|
---|
83 | 47 concepts::check_concepts_and_equal_dimensions<Geometry const, Bounds>();
|
---|
84 | 48 dispatch::bounds<Geometry, Bounds>::apply(g, b);
|
---|
85 | 49 }
|
---|
86 | 50
|
---|
87 | 51 namespace dispatch {
|
---|
88 | 52
|
---|
89 | (gdb) up
|
---|
90 | #5 0x0000000000450de8 in boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::expandable_box<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > >::expandable_box<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > > (this=0x7fffffff8ad0, indexable=...)
|
---|
91 | at /homepath/local_4.8.2/include/boost/geometry/index/detail/rtree/pack_create.hpp:206
|
---|
92 | 206 detail::bounds(indexable, m_box);
|
---|
93 | (gdb) list
|
---|
94 | 201
|
---|
95 | 202 template <typename Indexable>
|
---|
96 | 203 explicit expandable_box(Indexable const& indexable)
|
---|
97 | 204 : m_initialized(true)
|
---|
98 | 205 {
|
---|
99 | 206 detail::bounds(indexable, m_box);
|
---|
100 | 207 }
|
---|
101 | 208
|
---|
102 | 209 template <typename Indexable>
|
---|
103 | 210 void expand(Indexable const& indexable)
|
---|
104 | (gdb) print indexable
|
---|
105 | $10 = (const boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > &) @0x3d7042f4c05b7931: <error reading variable>
|
---|
106 | (gdb) print m_box
|
---|
107 | $11 = {m_min_corner = {m_values = {4.59163468e-41, -nan(0x7f8b00), 4.59163468e-41}}, m_max_corner = {m_values = {-nan(0x7f8b10), 4.59163468e-41, 2.80259693e-45}}}
|
---|
108 | (gdb) up
|
---|
109 | #6 0x000000000044ff3c in boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::per_level<__gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >*, std::vector<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >, std::allocator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > > > > > > (first=..., last=..., hint_box=..., values_count=2, subtree_counts=..., parameters=..., translator=..., allocators=...)
|
---|
110 | at /homepath/local_4.8.2/include/boost/geometry/index/detail/rtree/pack_create.hpp:273
|
---|
111 | 273 expandable_box<Box> elements_box(translator(*(first->second)));
|
---|
112 | (gdb) list
|
---|
113 | 268 // reserve space for values
|
---|
114 | 269 rtree::elements(l).reserve(values_count); // MAY THROW (A)
|
---|
115 | 270
|
---|
116 | 271 // calculate values box and copy values
|
---|
117 | 272 // initialize the box explicitly to avoid GCC-4.4 uninitialized variable warnings with O2
|
---|
118 | 273 expandable_box<Box> elements_box(translator(*(first->second)));
|
---|
119 | 274 rtree::elements(l).push_back(*(first->second)); // MAY THROW (A?,C)
|
---|
120 | 275 for ( ++first ; first != last ; ++first )
|
---|
121 | 276 {
|
---|
122 | 277 // NOTE: push_back() must be called at the end in order to support move_iterator.
|
---|
123 | (gdb) print l
|
---|
124 | $12 = (boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::leaf &) @0x980fc8: {elements = {m_size = 0, m_storage = {<boost::detail::aligned_storage::aligned_storage_imp<84ul, 4ul>> = {
|
---|
125 | data_ = {buf = '\000' <repeats 83 times>, align_ = {<No data fields>}}}, static size = <optimized out>, static alignment = <optimized out>}}}
|
---|
126 | (gdb) print first
|
---|
127 | $13 = {_M_current = 0x7ffff7e956f0}
|
---|
128 | (gdb) print *first
|
---|
129 | $14 = (std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > > &) @0x7ffff7e956f0: {first = {
|
---|
130 | m_values = {-1.29287779, -3.66899729, -0.309909105}}, second = {_M_current = 0x3d7042f4c05b7931}}
|
---|
131 | (gdb) print *(first->second)
|
---|
132 | $15 = (const std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> &) @0x3d7042f4c05b7931: <error reading variable>
|
---|
133 | (gdb) up
|
---|
134 | #7 0x000000000045113c in boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::per_level_packets<__gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >*, std::vector<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >, std::allocator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > > > > >, boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::expandable_box<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > > > (
|
---|
135 | first=..., last=..., hint_box=..., values_count=2, subtree_counts=..., next_subtree_counts=..., elements=..., elements_box=..., parameters=..., translator=..., allocators=...)
|
---|
136 | at /homepath/local_4.8.2/include/boost/geometry/index/detail/rtree/pack_create.hpp:348
|
---|
137 | 348 parameters, translator, allocators);
|
---|
138 | (gdb) list
|
---|
139 | 343 // only one packet
|
---|
140 | 344 if ( values_count <= subtree_counts.maxc )
|
---|
141 | 345 {
|
---|
142 | 346 // the end, move to the next level
|
---|
143 | 347 internal_element el = per_level(first, last, hint_box, values_count, next_subtree_counts,
|
---|
144 | 348 parameters, translator, allocators);
|
---|
145 | 349
|
---|
146 | 350 // in case if push_back() do throw here
|
---|
147 | 351 // and even if this is not probable (previously reserved memory, nonthrowing pairs copy)
|
---|
148 | 352 // this case is also tested by exceptions test.
|
---|
149 | (gdb) print *first
|
---|
150 | $16 = (std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > > &) @0x7ffff7e956f0: {first = {
|
---|
151 | m_values = {-1.29287779, -3.66899729, -0.309909105}}, second = {_M_current = 0x3d7042f4c05b7931}}
|
---|
152 | (gdb) print *last
|
---|
153 | $17 = (std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > > &) @0x7ffff7e95720: {first = {
|
---|
154 | m_values = {-1.35743952, -3.83440971, -0.309909105}}, second = {_M_current = 0x3d7042f4c0605fbd}}
|
---|
155 | (gdb) print hint_box
|
---|
156 | $18 = (const boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > &) @0x7fffffff8d60: {m_min_corner = {m_values = {-1.6462481,
|
---|
157 | -2.62174368, 4.24074507}}, m_max_corner = {m_values = {-1.52202475, -2.47617054, 4.3141427}}}
|
---|
158 | (gdb) print values_count
|
---|
159 | $19 = 2
|
---|
160 | (gdb) print next_subtree_counts
|
---|
161 | $20 = (const boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::subtree_elements_counts &) @0x7fffffff8e90: {maxc = 1, minc = 0}
|
---|
162 | (gdb) print parameters
|
---|
163 | $21 = (const boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::parameters_type &) @0x7fffffffc160: {static max_elements = <optimized out>, static min_elements = <optimized out>,
|
---|
164 | static reinserted_elements = <optimized out>, static overlap_cost_threshold = <optimized out>}
|
---|
165 | (gdb) print translator
|
---|
166 | $22 = (const boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > &) @0x7fffffffc160: {<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >> = {<boost::geometry::index::detail::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, false>> = {<No data fields>}, <No data fields>}, <boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >> = {<boost::geometry::index::detail::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, false>> = {<No data fields>}, <No data fields>}, <No data fields>}
|
---|
167 | (gdb) print allocator
|
---|
168 | No symbol "allocator" in current context.
|
---|
169 | (gdb) print allocators
|
---|
170 | $23 = (boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> &) @0x7fffffffc160: {<std::allocator<boost::variant<boost::geometry::index::detail::rtree::variant_leaf<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::rtree::variant_internal_node<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::rtree::node_variant_static_tag> > >> = {<__gnu_cxx::new_allocator<boost::variant<boost::geometry::index::detail::rtree::variant_leaf<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::rtree::variant_internal_node<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::rtree::node_variant_static_tag> > >> = {<No data fields>}, <No data fields>}, <No data fields>}
|
---|
171 | (gdb) up
|
---|
172 | #8 0x00000000004512a5 in boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::per_level_packets<__gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >*, std::vector<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >, std::allocator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > > > > >, boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::expandable_box<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > > > (
|
---|
173 | first=..., last=..., hint_box=..., values_count=4, subtree_counts=..., next_subtree_counts=..., elements=..., elements_box=..., parameters=..., translator=..., allocators=...)
|
---|
174 | at /homepath/local_4.8.2/include/boost/geometry/index/detail/rtree/pack_create.hpp:372
|
---|
175 | 372 per_level_packets(first, median, left,
|
---|
176 | (gdb) list
|
---|
177 | 367 pack_utils::biggest_edge<dimension>::apply(hint_box, greatest_length, greatest_dim_index);
|
---|
178 | 368 Box left, right;
|
---|
179 | 369 pack_utils::nth_element_and_half_boxes<0, dimension>
|
---|
180 | 370 ::apply(first, median, last, hint_box, left, right, greatest_dim_index);
|
---|
181 | 371
|
---|
182 | 372 per_level_packets(first, median, left,
|
---|
183 | 373 median_count, subtree_counts, next_subtree_counts,
|
---|
184 | 374 elements, elements_box,
|
---|
185 | 375 parameters, translator, allocators);
|
---|
186 | 376 per_level_packets(median, last, right,
|
---|
187 | (gdb) print elements
|
---|
188 | $24 = (boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::internal_elements &) @0x980f48: {m_size = 0, m_storage = {<boost::detail::aligned_storage::aligned_storage_imp<96ul, 8ul>> = {
|
---|
189 | data_ = {buf = '\000' <repeats 95 times>, align_ = {<No data fields>}}}, static size = <optimized out>, static alignment = <optimized out>}}
|
---|
190 | (gdb) print element_box
|
---|
191 | No symbol "element_box" in current context.
|
---|
192 | (gdb) print elements_box
|
---|
193 | $25 = (boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::expandable_box<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > > &) @0x7fffffff8e60: {m_initialized = false, m_box = {m_min_corner = {m_values = {4.59163468e-41, 6.3518295e-39, 0}}, m_max_corner = {m_values = {-9.46537867e+33, 4.59163468e-41, -nan(0x7f8eb0)}}}}
|
---|
194 | (gdb) up
|
---|
195 | #9 0x000000000045019b in boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::per_level<__gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >*, std::vector<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >, std::allocator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > > > > > > (first=..., last=..., hint_box=..., values_count=4, subtree_counts=..., parameters=..., translator=..., allocators=...)
|
---|
196 | at /homepath/local_4.8.2/include/boost/geometry/index/detail/rtree/pack_create.hpp:321
|
---|
197 | 321 per_level_packets(first, last, hint_box, values_count, subtree_counts, next_subtree_counts,
|
---|
198 | (gdb) list
|
---|
199 | 316 std::size_t nodes_count = calculate_nodes_count(values_count, subtree_counts);
|
---|
200 | 317 rtree::elements(in).reserve(nodes_count); // MAY THROW (A)
|
---|
201 | 318 // calculate values box and copy values
|
---|
202 | 319 expandable_box<Box> elements_box;
|
---|
203 | 320
|
---|
204 | 321 per_level_packets(first, last, hint_box, values_count, subtree_counts, next_subtree_counts,
|
---|
205 | 322 rtree::elements(in), elements_box,
|
---|
206 | 323 parameters, translator, allocators);
|
---|
207 | 324
|
---|
208 | 325 auto_remover.release();
|
---|
209 | (gdb) up
|
---|
210 | #10 0x000000000045113c in boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::per_level_packets<__gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >*, std::vector<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > >, std::allocator<std::pair<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian>, __gnu_cxx::__normal_iterator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> const*, std::vector<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > > > > > > >, boost::geometry::index::detail::rtree::pack<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::detail::rtree::options<boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::index::detail::rtree::insert_reinsert_tag, boost::geometry::index::detail::rtree::choose_by_overlap_diff_tag, boost::geometry::index::detail::rtree::split_default_tag, boost::geometry::index::detail::rtree::rstar_tag, boost::geometry::index::detail::rtree::node_variant_static_tag>, boost::geometry::index::detail::translator<boost::geometry::index::indexable<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, boost::geometry::index::equal_to<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> > >, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::allocators<std::allocator<std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int> >, std::pair<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, int>, boost::geometry::index::rstar<2ul, 1ul, 0ul, 32ul>, boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> >, boost::geometry::index::detail::rtree::node_variant_static_tag> >::expandable_box<boost::geometry::model::box<boost::geometry::model::point<float, 3ul, boost::geometry::cs::cartesian> > > > (
|
---|
211 | first=..., last=..., hint_box=..., values_count=4, subtree_counts=..., next_subtree_counts=..., elements=..., elements_box=..., parameters=..., translator=..., allocators=...)
|
---|
212 | at /homepath/local_4.8.2/include/boost/geometry/index/detail/rtree/pack_create.hpp:348
|
---|
213 | 348 parameters, translator, allocators);
|
---|
214 | (gdb) list
|
---|
215 | 343 // only one packet
|
---|
216 | 344 if ( values_count <= subtree_counts.maxc )
|
---|
217 | 345 {
|
---|
218 | 346 // the end, move to the next level
|
---|
219 | 347 internal_element el = per_level(first, last, hint_box, values_count, next_subtree_counts,
|
---|
220 | 348 parameters, translator, allocators);
|
---|
221 | 349
|
---|
222 | 350 // in case if push_back() do throw here
|
---|
223 | 351 // and even if this is not probable (previously reserved memory, nonthrowing pairs copy)
|
---|
224 | 352 // this case is also tested by exceptions test.
|
---|