Boost logo

Boost Users :

From: David A. Greene (greened_at_[hidden])
Date: 2002-04-26 10:30:25


Hi,

I've been learning the BGL and porting some existing code over
to it. First off, Kudos to Jeremy, Lie-Quan and all the BGL
developers. This library is great!

I find the filtered_graph potentially very useful for my
application except for one case. In some (not rare)
instances I need to be able to create a filtered_graph
that spans two graphs. In other words, I have two
separate graphs. Most of the time the information I need
is entirely contained in one graph so a filtered_graph
works perfectly. However, sometimes I need to create a
filtered_graph from several separate graphs and link them
together in a well-defined manner (i.e. I easily know where
the edges should go). I need a "supergraph" that is the
combination of the two filtered graphs.

Right now the application handles this problem by creating
a new graph from the existing graphs. But this takes time
and memory. I'd like to get rid of this overhead if possible,
especially since these are often short-lived graphs.

The filtered_graph objects would not be induced subgraphs
so a subgraph object wouldn't work (subgraph also doesn't
support something that spans multiple graphs anyway). What
I need is the opposite of subgraph -- a unified interface
to multiple filtered_graphs.

This seems very hard to do because each filtered_graph will
have its own vertex and edge index mappings. An extra level
of indirection would solve the problem but I'm not sure the
overhead would be less than simply creating a new graph.

Thoughts? Opinions?

Thanks again for a great library!

                               -Dave

-- 
"Some little people have music in them, but Fats, he was all music,
  and you know how big he was."  --  James P. Johnson

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net