Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap > Struct Template Reference

Customized visitor passed to breadth-first search, which records predecessor and the number of shortest paths to each vertex. More...

#include <betweenness_centrality.hpp>

Inheritance diagram for boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap >:
Collaboration diagram for boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap >:

Public Types

typedef graph_traits< Graph >
::edge_descriptor 
edge_descriptor
 
typedef graph_traits< Graph >
::vertex_descriptor 
vertex_descriptor
 

Public Member Functions

 visitor_type (IncomingMap incoming, DistanceMap distance, PathCountMap path_count, std::stack< vertex_descriptor > &ordered_vertices)
 
void examine_vertex (vertex_descriptor v, Graph &)
 Keep track of vertices as they are reached. More...
 
void tree_edge (edge_descriptor e, Graph &g)
 Whenever an edge e = (v, w) is labelled a tree edge, the incoming edge list for w is set to {(v, w)} and the shortest path count of w is set to the number of paths that reach {v}. More...
 
void non_tree_edge (edge_descriptor e, Graph &g)
 If an edge e = (v, w) is not a tree edge, it may still be the case that we've found more equally-short paths, so include (v, w) in the incoming edge list of w and add all of the shortest paths to v to the shortest path count of w. More...
 
graph::bfs_visitor_event_not_overridden initialize_vertex (Vertex u, Graph &g)
 
graph::bfs_visitor_event_not_overridden discover_vertex (Vertex u, Graph &g)
 
graph::bfs_visitor_event_not_overridden examine_vertex (Vertex u, Graph &g)
 
graph::bfs_visitor_event_not_overridden examine_edge (Edge e, Graph &g)
 
graph::bfs_visitor_event_not_overridden tree_edge (Edge e, Graph &g)
 
graph::bfs_visitor_event_not_overridden non_tree_edge (Edge e, Graph &g)
 
graph::bfs_visitor_event_not_overridden gray_target (Edge e, Graph &g)
 
graph::bfs_visitor_event_not_overridden black_target (Edge e, Graph &g)
 
graph::bfs_visitor_event_not_overridden finish_vertex (Vertex u, Graph &g)
 

Protected Attributes

Visitors m_vis
 

Detailed Description

template<typename Graph, typename IncomingMap, typename DistanceMap, typename PathCountMap>
struct boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap >

Customized visitor passed to breadth-first search, which records predecessor and the number of shortest paths to each vertex.

Member Typedef Documentation

template<typename Graph, typename IncomingMap, typename DistanceMap, typename PathCountMap>
typedef graph_traits<Graph>::edge_descriptor boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap >::edge_descriptor
template<typename Graph, typename IncomingMap, typename DistanceMap, typename PathCountMap>
typedef graph_traits<Graph>::vertex_descriptor boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap >::vertex_descriptor

Constructor & Destructor Documentation

template<typename Graph, typename IncomingMap, typename DistanceMap, typename PathCountMap>
boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap >::visitor_type ( IncomingMap  incoming,
DistanceMap  distance,
PathCountMap  path_count,
std::stack< vertex_descriptor > &  ordered_vertices 
)
inline

Member Function Documentation

graph::bfs_visitor_event_not_overridden boost::bfs_visitor< Visitors >::black_target ( Edge  e,
Graph &  g 
)
inlineinherited
graph::bfs_visitor_event_not_overridden boost::bfs_visitor< Visitors >::discover_vertex ( Vertex  u,
Graph &  g 
)
inlineinherited
graph::bfs_visitor_event_not_overridden boost::bfs_visitor< Visitors >::examine_edge ( Edge  e,
Graph &  g 
)
inlineinherited
graph::bfs_visitor_event_not_overridden boost::bfs_visitor< Visitors >::examine_vertex ( Vertex  u,
Graph &  g 
)
inlineinherited
template<typename Graph, typename IncomingMap, typename DistanceMap, typename PathCountMap>
void boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap >::examine_vertex ( vertex_descriptor  v,
Graph &   
)
inline

Keep track of vertices as they are reached.

graph::bfs_visitor_event_not_overridden boost::bfs_visitor< Visitors >::finish_vertex ( Vertex  u,
Graph &  g 
)
inlineinherited
graph::bfs_visitor_event_not_overridden boost::bfs_visitor< Visitors >::gray_target ( Edge  e,
Graph &  g 
)
inlineinherited
graph::bfs_visitor_event_not_overridden boost::bfs_visitor< Visitors >::initialize_vertex ( Vertex  u,
Graph &  g 
)
inlineinherited
graph::bfs_visitor_event_not_overridden boost::bfs_visitor< Visitors >::non_tree_edge ( Edge  e,
Graph &  g 
)
inlineinherited
template<typename Graph, typename IncomingMap, typename DistanceMap, typename PathCountMap>
void boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap >::non_tree_edge ( edge_descriptor  e,
Graph &  g 
)
inline

If an edge e = (v, w) is not a tree edge, it may still be the case that we've found more equally-short paths, so include (v, w) in the incoming edge list of w and add all of the shortest paths to v to the shortest path count of w.

References boost::put(), boost::source(), and boost::target().

template<typename Graph, typename IncomingMap, typename DistanceMap, typename PathCountMap>
void boost::detail::graph::brandes_unweighted_shortest_paths::visitor_type< Graph, IncomingMap, DistanceMap, PathCountMap >::tree_edge ( edge_descriptor  e,
Graph &  g 
)
inline

Whenever an edge e = (v, w) is labelled a tree edge, the incoming edge list for w is set to {(v, w)} and the shortest path count of w is set to the number of paths that reach {v}.

References boost::put(), boost::source(), and boost::target().

graph::bfs_visitor_event_not_overridden boost::bfs_visitor< Visitors >::tree_edge ( Edge  e,
Graph &  g 
)
inlineinherited

Member Data Documentation

Visitors boost::bfs_visitor< Visitors >::m_vis
protectedinherited

The documentation for this struct was generated from the following file: