2
0
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:
Douglas Gregor
2007-06-01 18:22:00 +00:00
parent 321afa14d8
commit 8cd257f4cb
4 changed files with 65 additions and 10 deletions

View File

@@ -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

View File

@@ -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>
{