Boost logo

Boost :

From: Francois Faure (Francois.Faure_at_[hidden])
Date: 2001-05-03 08:15:48

Artur Wisz wrote:
> Finding out-edges/in-edges with common targets/sources can be done with
> set_intersection with predicate, provided that the edges are sorted. This
> should be true with associative containers, but not the others, like lists
> or vectors. So here is the first problem: in the graph interface currently
> there is no way to sort edges/out-edges/in-edges of a graph. The workaround
> is to make a copy of those sets, sort them and then find the intersections.

Hi, can't you use the setS container for vertices ?

> Another problem is accessing all edge properties at once, i.e. for copying
> them. Now properties can be accessed only in one dimension, and the property
> has to be explicitly specified. There is no generic way of manipulating all
> element properties as a whole, while adhering to the concept that a property
> can be anything, although there are already types edge_property_type and
> vertex_property_type in the MutablePropertyGraph concept. Therefore a user
> has to supply a function object for doing things like copying properties of
> one element to another, which is a pretty generic operation. Perhaps the
> MutablePropertyGraph concept could be extended somehow to allow such
> manipulations.

I agree. A property can be set globally at edge or vertex creation as a
parameter of add_edge() or add_vertex(). But then it can no more be
accessed globally, which is quite inconvenient in some applications.
Direct access to global properties would be a nice feature.


655 av. de l'Europe, 38330 Montbonnot, France
Francois.Faure_at_[hidden]  Tel (+33) 4 76 61 54 33  Fax (+33) 4 76 61 54 40

Boost list run by bdawes at, gregod at, cpdaniel at, john at