For both syntactic and semantic reasons, the Dup() functions listed below are not virtual. Syntactically, they must each have a different return type. Dup() and Clone are discussed in Section Communicators .
namespace MPI {int Group::Get_size() const
static void Group::Translate_ranks (const Group& group1,
int n, const int ranks1[], const Group& group2, int ranks2[])
static int Group::Compare(const Group& group1,
const Group& group2)
Group Comm::Get_group() const
static Group Group::Union(const Group& group1,
const Group& group2)
static Group Group::Intersect(const Group& group1,
const Group& group2)
static Group Group::Difference(const Group& group1,
const Group& group2)
Group Group::Incl(int n, const int ranks[]) const
Group Group::Excl(int n, const int ranks[]) const
Group Group::Range_incl(int n, const int ranges[][3]) const
Group Group::Range_excl(int n, const int ranges[][3]) const
void Group::Free()
int Comm::Get_size() const
int Comm::Get_rank() const
static int Comm::Compare(const Comm& comm1,
const Comm& comm2)
Intracomm Intracomm::Dup() const
Intercomm Intercomm::Dup() const
Cartcomm Cartcomm::Dup() const
Graphcomm Graphcomm::Dup() const
Comm& Comm::Clone() const = 0
Intracomm& Intracomm::Clone() const
Intercomm& Intercomm::Clone() const
Cartcomm& Cartcomm::Clone() const
Graphcomm& Graphcomm::Clone() const
Intracomm Intracomm::Create(const Group& group) const
Intracomm Intracomm::Split(int color, int key) const
void Comm::Free()
bool Comm::Is_inter() const
int Intercomm::Get_remote_size() const
Group Intercomm::Get_remote_group() const
Intercomm Intracomm::Create_intercomm(int local_leader, const
Comm& peer_comm, int remote_leader, int tag) const
Intracomm Intercomm::Merge(bool high) const
};