eckit::mpi::Group class

Group by construction has always a valid content_

Constructors, destructors, conversion operators

Group()
Null request constructor.
Group(int)
Group(GroupContent*)
Constructor.
~Group()
Group(const Group&)

Public functions

auto operator=(const Group&) -> Group&
template<class T>
auto as() -> T&
template<class T>
auto as() const -> const T&
auto group() const -> int
auto compare(const Group&) const -> int
auto difference(const Group&) const -> Group
auto intersection(const Group&) const -> Group
auto union_group(const Group&) const -> Group
auto size() const -> size_t
auto rank() const -> int
auto excl(const std::vector<int>& ranks) const -> Group
auto incl(const std::vector<int>& ranks) const -> Group
auto range_excl(const std::vector<std::array<int, 3>>& ranks) const -> Group
auto range_incl(const std::vector<std::array<int, 3>>& ranks) const -> Group
auto translate_ranks(const std::vector<int>&, const Group&) const -> std::unordered_map<int, int>

Friends

auto operator<<(std::ostream& s, const Group& o) -> std::ostream&

Function documentation

eckit::mpi::Group::Group(int)

Group constructor from the Group() integer Use only for interfacing with Fortran

int eckit::mpi::Group::group() const

Returns this request interpreted as a int by the underlying implementation Use only for interfacing with Fortran