[Lemon-user] Inheriting from Lemon classes
Kovács Péter
kpeter at inf.elte.hu
Thu May 26 10:18:22 CEST 2016
Hi All,
> I'm still mystified why you rewrote Boost Graph instead of
> contributing to a common code base.
In short: we believe that LEMON provides better design and API,
furthermore it definitely provides a wider variety of complex algorithms
and (much) better overall performance. Some of these benefits could have
been achieved by improving Boost Graph, but fundamental changes (design
and performance) couldn't have been made this way.
If you are interested in more details, please refer to this paper that
introduces LEMON in comparison with other libraries, Boost Graph and LEDA:
http://www.sciencedirect.com/science/article/pii/S1571066111000740
Regards,
Péter
> I'm still mystified why you rewrote Boost Graph instead of contributing
> to a common code base.
>
> (Although I will admit I prefer certain aspects of LEMON. Unfortunately
> I've not had time make serious use of it so I'm reduced to lurking about.)
>
> THK
>
> http://www.keittlab.org/
>
> On Wed, May 25, 2016 at 9:58 AM, Balázs Dezső <deba.mf at gmail.com
> <mailto:deba.mf at gmail.com>> wrote:
>
> In LEMON, you can create an own length map, and the LengthMap can do
> the distance computation for you.
>
> The length map can be any type which fullfills the ReadMap concept:
> http://lemon.cs.elte.hu/pub/doc/1.3.1/a00319.html
> So you have to implement a class with Key and Value typedefs, and
> implement Value operator[](Key).
>
> There are a bunch of maps in LEMON, which do some on-the-fly
> computation:
> http://lemon.cs.elte.hu/pub/doc/1.3.1/a00016.html
>
> Of course, the computation can be more complex.
>
>
>
> On Wed, May 25, 2016 at 3:48 PM Tim Keitt <tkeitt at utexas.edu
> <mailto:tkeitt at utexas.edu>> wrote:
>
> You could use Boost Graph, which was designed for exactly this
> sort of adaptation.
>
> THK
>
> http://www.keittlab.org/
>
> On Wed, May 25, 2016 at 8:30 AM, Marco Blanco <blanco at zib.de
> <mailto:blanco at zib.de>> wrote:
>
> Hello,
>
> I am implementing a shortest path algorithm where the arc
> costs are unknown a priori and need to be computed on the
> fly. For that reason, I decided to try to define a class
> MyDijkstra, which inherits from
> lemon::Dijkstra<ListDigraph>. My plan was to override the
> member function processNextNode(), but then I realized that
> the Dijkstra class has some private members that I would
> need and don't have access to, such as the underlying
> digraph object. I temporarily solved the issue by replacing
> all "private" labels with "protected" in "dijkstra.h", but I
> don't like messing with the Lemon source code.
>
> Is inheriting from Lemon classes discouraged in general? Can
> you think of an alternative way in which I could make use of
> the existing structure without having to copy-paste the
> entire class definition only to change two lines?
>
> Thank you,
> Marco
>
> _______________________________________________
> Lemon-user mailing list
> Lemon-user at lemon.cs.elte.hu <mailto:Lemon-user at lemon.cs.elte.hu>
> http://lemon.cs.elte.hu/mailman/listinfo/lemon-user
>
>
> _______________________________________________
> Lemon-user mailing list
> Lemon-user at lemon.cs.elte.hu <mailto:Lemon-user at lemon.cs.elte.hu>
> http://lemon.cs.elte.hu/mailman/listinfo/lemon-user
>
>
>
>
> _______________________________________________
> Lemon-user mailing list
> Lemon-user at lemon.cs.elte.hu
> http://lemon.cs.elte.hu/mailman/listinfo/lemon-user
>
More information about the Lemon-user
mailing list