Hi,
I have a problem with traversing over all parents of a vertex.
If I use (the undocumented?) inv_adjacency_iterator_generator class to
return iterators for the parents (predecessors) of a vertex I get a
compile error. It worked on an earlier version of the library (in debian
testing), but does not work for the latest version(1.31.0).
I think the problem is that it can no longer find a suitable constructor.
Here is my code:
// some typedefs removed......
typedef boost::graph_traits<TaskGraph>::in_edge_iterator InEdgeIterator;
typedef boost::adjacency_list TaskGraph;
typedef boost::inv_adjacency_iterator_generator::type ParentsIterator;
std::pair
parents(VertexID v, TaskGraph &tg)
{
InEdgeIterator e,e_end;
tie(e,e_end) = in_edges(v,tg);
ParentsIterator c(e),c_end(e_end); // problem here. No suitable
constructor.
return make_pair(e,e_end);
}
(Traversing through the children/predecessors works fine.)
Regards Peter Aronsson
--
_________________________________________________________________
/ Peter Aronsson, Phd Student at PELAB (Programming Environments \
| Laboratory ) Department for Computer & Information Science |
| Linköping University, Sweden |
|=================================================================|
| petar@ida.liu.se , phone +46 (0)13-28 1737 Room 3B:490 |
\_________________________________________________________________/