$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-07 16:03:07
Hi Adam,
>> In the currently running xint review the CRTP is proposed instead of
>> virtual functions, and it might be that this is also possible here. If
>> so, that is probably preferable.
>
> Details in this case could be usefull.
>
> There are many things which might be changed. Nevertheles, we need 
> runtime polimorphism so there must be virtual functions or some 
> condition check with type casting. All in runtime. CRTP is 
> compile-time technique.
I know.
It is only that we would like to enhance performance and/or design, if 
possible, and I know these things were already there.
Mocking virtual inheritance by type casting is probably not the best way 
indeed.
So I don't know the solution, but I asked if there is a possible solution.
If a tree is three levels deep, I might imagine that only the deepest 
level is a leaf, and there rest are nodes including containers to 
contain deeper levels. No virtual methods then. As a sort of 
compile-time tree. But I'm not sure if this is feasable. Didn't work it out.
>
> More in the next email.
I've read it and will react.
> I've just presented what is implemented in the rtree. There are two 
> remove() methods. First takes Value and second takes Box but in the 
> second case only an element with box equal to the parameter is removed 
> (btw, function description is wrong).
I understand, but we are free to create any new interface (the "best" 
interface) we can think of. The old interface was OK as a first 
interface and I could do what I want with it, but before it is a 
candidate for release it must be generic and all functions must have a 
reason. You did a very good job with the range adaptors and I like that 
kind of interface very much. So this is the next step.
Regards, Barend
-- Barend Gehrels http://about.me/barendgehrels