$include_dir="/home/hyper-archives/geometry/include"; include("$include_dir/msg-header.inc") ?>
Subject: [ggl] spacial index construction interface
From: Barend Gehrels (barend)
Date: 2011-03-09 14:27:36
Hi Adam,
On 9-3-2011 20:12, Adam Wulkiewicz wrote:
>
> Yes, rtree must be dynamic. Yes, code should be redesigned.
>
> To keep it short, this is what it should be done:
>
> 1.
> - leave current nodes hierarchy (node, internal_node, leaf),
> - remove as much virtual functions as possible, functionalities of 
> specific type of node will be implemented in this node's class only,
> - use visitors instead of virtual functions to reduce vtable to minimum.
OK
>
> 2.
> - replace shared_ptr(s) with simple pointers,
IMO it should be a std::vector<node>, so no pointer at all. Replacing 
them with simple pointer does not help the problem. The shared_ptr is 
not the problem, but the pointer.
> - replace memory allocation done by operator new with some allocator 
> (std::allocator by default).
Using a std::vector keeps all memory allocation from the library itself. 
So this is not necessary (again, if I'm right).
Is this OK?
>
> 3.
> - remove equals() from translator, since it should just translate from 
> Value to Indexable and define operator== for geometry::point, 
> geometry::box.
I see many equals functions in the translator folder. Which do you refer 
to now?
Thanks, Barend
-- Barend Gehrels http://about.me/barendgehrels