mirror of
https://github.com/boostorg/mpi.git
synced 2026-02-25 16:32:22 +00:00
Document graph topologies, implement layer over MPI_Topo_test
[SVN r37853]
This commit is contained in:
@@ -766,6 +766,21 @@ class communicator
|
||||
*/
|
||||
communicator split(int color, int key) const;
|
||||
|
||||
/**
|
||||
* Determines whether this communicator has a Cartesian topology.
|
||||
*/
|
||||
bool has_cartesian_topology() const;
|
||||
|
||||
/**
|
||||
* Determines whether this communicator has a graph topology. If
|
||||
* the communicator does have a graph topology, the communicator
|
||||
* itself can be viewed as a graph by the algorithms in the Boost
|
||||
* Graph Library. The communicator then meets the requirements of
|
||||
* the @c Graph, @c Incidence Graph, @c Adjacency Graph, @c Vertex
|
||||
* List Graph, and @c Edge List Graph concepts.
|
||||
*/
|
||||
bool has_graph_topology() const;
|
||||
|
||||
/**
|
||||
* Create a new communicator whose topology is described by the
|
||||
* given graph. The vertex index map (@p index) gives the mapping
|
||||
|
||||
@@ -377,6 +377,10 @@ struct graph_traits<mpi::communicator> {
|
||||
{
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Returns a vertex descriptor that can never refer to any
|
||||
* valid vertex.
|
||||
*/
|
||||
static vertex_descriptor null_vertex() { return -1; }
|
||||
|
||||
// Incidence Graph requirements
|
||||
@@ -396,6 +400,10 @@ struct graph_traits<mpi::communicator> {
|
||||
};
|
||||
|
||||
// Property Graph requirements
|
||||
|
||||
/**
|
||||
* INTERNAL ONLY
|
||||
*/
|
||||
template<>
|
||||
struct property_map<mpi::communicator, vertex_index_t>
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user