Jeremy, On Wed, 31 Mar 2004, Jeremy Siek wrote:
On Mar 31, 2004, at 1:52 PM, Douglas Paul Gregor wrote:
The only thing I've ever found complex in the BGL is actually forming a graph type out of adjacency_list. Every single time I need a graph I have to read through the adjacency_list documentation to figure out what to do, although often I just copy the typedef from somewhere else. Simplified graph adaptors could really help here.
Right. In particular, the way internal properties are dealt with is rather cumbersome.
Actually, I'm guessing that was part of the suggested "digraph" adaptor:
that vertices implicitly have names of a particular type and that a name
can be directly mapped to a vertex by the adaptor. About 3/4 of the time I
have a BGL graph (and I have a LOT of BGL graphs <g>) I also have a
map
Looks neat. How would that be implemented? I hope it doesn't require storing something in the graph object itself that keeps track of the progress of the iteration.
Uh-oh. I had an implementation in mind, but now I see that it was flawed. I'll just go sit in the corner now.
BTW, for those who like macros, there's boost/graph/iteration_macros.hpp.
Ah, the BGL is full of wonders! Doug