views:

62

answers:

1

I have a Graph type which satisfies concepts:

boost::function_requires<boost::GraphConcept<Graph> >();
boost::function_requires<boost::IncidenceGraphConcept<Graph> >();
boost::function_requires<boost::BidirectionalGraphConcept<Graph> >();
boost::function_requires<boost::VertexListGraphConcept<Graph> >();
boost::function_requires<boost::AdjacencyGraphConcept<Graph> >();

when i make a reverse adaptor:

boost::make_reverse_graph(g);

i receive such errors:

'edges_size_type' : is not a member of 'boost::graph_traits<Graph>'
'edge_property_type' : is not a member of 'Graph'
'vertex_property_type' : is not a member of 'Graph'

Why does reverse_graph requires edges_size_type? edges_size_type isn't in BidirectionalGraph, VertexListGraph, PropertyGraph. it is in EdgeListGraph concept.

reverse_graph requires Graph to be BidirectionalGraph and optionally VertexListGraph and PropertyGraph. What does optionally mean? My graph is not a PropertyGraph. I just want to revert edges.

+1  A: 

The answer is here

Andreo