Boost logo

Boost :

From: David Abrahams (david.abrahams_at_[hidden])
Date: 2002-01-09 11:35:22

Please find enclosed a file I'm trying to compile with the current boost CVS
snapshot. I'm running into lots of issues. I have detailed them in comments
in the code, but will summarize here:

1. As I mentioned in a previous posting, I have to use my own graph type
because adjacency_list doesn't support std::set<> as a backbone.

2. The IncidenceGraph requirements demand support for a source(e) function
which returns the source vertex of any edge. I think this is unneeded for
most algorithms and it causes either inefficient graph storage or
inefficient iterators.

3. Something in the graph library is causing it to complain unless I've
defined the following types, which are not supposed to be required for any
of the Graph concepts I'm modelling. I hacked them in as void:

      typedef void in_edge_iterator;
      typedef void edge_iterator;
      typedef void edges_size_type;

4. Making an IncidenceGraph into an AdjacencyGraph requires some boilerplate
(admittedly using adjacency_iterator<>, but boilerplate still). This should
be a graph adaptor in the library.

5. It isn't clear from the documentation what I need to to in order to get
my breadth_first_visit() call to compile. I think I've followed all the
directions, but I appear to be a long way off.

Thanks for your attention, Rich!


  David Abrahams, C++ library designer for hire

        C++ Booster (
          email: david.abrahams_at_[hidden]

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