...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::graph_traits<mpi::graph_communicator> — Traits structure that allows a communicator with graph topology to be view as a graph by the Boost Graph Library.
// In header: <boost/mpi/graph_communicator.hpp> struct graph_traits<mpi::graph_communicator> { // types typedef int vertex_descriptor; typedef std::pair< int, int > edge_descriptor; typedef directed_tag directed_category; typedef disallow_parallel_edge_tag edge_parallel_category; typedef unspecified out_edge_iterator; typedef int degree_size_type; typedef unspecified adjacency_iterator; typedef counting_iterator< int > vertex_iterator; typedef int vertices_size_type; typedef unspecified edge_iterator; typedef int edges_size_type; // public static functions static vertex_descriptor null_vertex(); };
The specialization of graph_traits
for an MPI communicator allows a communicator with graph topology to be viewed as a graph. An MPI communicator with graph topology meets the requirements of the Graph, Incidence Graph, Adjacency Graph, Vertex List Graph, and Edge List Graph concepts from the Boost Graph Library.