Boost logo

Boost Users :

From: Wolfram Koska (koskaw_at_[hidden])
Date: 2005-08-08 15:50:00

> Using source/target in the hash function works so long as the hash on
> them is symmetric, because for undirected and bidirectional graphs you
> can have the same edge e represented as (u, v) or (v, u), depending on
> where you get it. Other than that restriction, you should be fine using
> source/target: it's okay to have two edges hash to the same thing, so
> long as your equality function compares the edge descriptors directly
> instead of using source/target.

I dug into the boost graph source for some more time, and I have to admit
that I'm far from understanding the big connections going on. I wondered,
though, what m_eproperty of the edge_desc_impl is. It is used in the
operator== of the edge_desc_impl (I checked this after reading your comment
about the equality function). I could not figure out yet what exactly this
is. My assumption is that it has something to do with the address of the
property storage of the edge? Well, the big question for me is could I use
this as my hash, too?

Thanks again,

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at