Wrapper for internally indexed communicator label. Always invokes UPstream::allocateCommunicatorComponents() and UPstream::freeCommunicatorComponents(). More...
#include <UPstream.H>
Public Member Functions | |
| communicator (const communicator &)=delete | |
| No copy construct. | |
| void | operator= (const communicator &)=delete |
| No copy assignment. | |
| communicator () noexcept | |
| Default construct (a placeholder communicator). | |
| communicator (communicator &&c) | |
| Move construct, takes ownership. | |
| communicator (const label parentComm, const labelRange &subRanks) | |
| Allocate communicator for contiguous sub-ranks on given parent. | |
| communicator (const label parentComm, const labelUList &subRanks) | |
| Allocate communicator for sub-ranks on given parent. | |
| ~communicator () | |
| Free allocated communicator. | |
| bool | good () const noexcept |
| True if communicator is non-negative (ie, was allocated). | |
| label | comm () const noexcept |
| The communicator label. | |
| communicator & | constCast () const noexcept |
| Return non-const reference to this. | |
| label | release () noexcept |
| Release ownership of the communicator, return old value. | |
| void | reset () |
| Free allocated communicator. | |
| void | reset (label parent, const labelRange &subRanks) |
| Allocate with contiguous sub-ranks of parent communicator. | |
| void | reset (label parent, const labelUList &subRanks) |
| Allocate with sub-ranks of parent communicator. | |
| void | reset (communicator &&c) |
| Take ownership, free managed communicator. | |
| void | swap (communicator &c) |
| Swap communicator labels. | |
| operator label () const noexcept | |
| Implicit cast to label - the same as comm(). | |
| void | operator= (communicator &&c) |
| Move assignment, takes ownership. | |
| bool | operator== (const communicator &c) const noexcept |
| Test for equality. | |
| bool | operator!= (const communicator &c) const noexcept |
| Test for inequality. | |
Static Public Member Functions | |
| static communicator | duplicate (const label parentComm) |
| Duplicate the given communicator. | |
| static communicator | split (const label parentComm, const int colour, const bool two_step=true) |
| Factory Method : Split the communicator on the given colour. | |
Wrapper for internally indexed communicator label. Always invokes UPstream::allocateCommunicatorComponents() and UPstream::freeCommunicatorComponents().
Definition at line 2545 of file UPstream.H.
|
delete |
No copy construct.
References communicator().
Referenced by communicator(), communicator(), constCast(), duplicate(), operator!=(), operator=(), operator=(), operator==(), reset(), split(), and swap().


|
inlinenoexcept |
Default construct (a placeholder communicator).
Definition at line 2574 of file UPstream.H.
References Foam::noexcept.
|
inline |
Move construct, takes ownership.
Definition at line 2579 of file UPstream.H.
References communicator().

|
inline |
Allocate communicator for contiguous sub-ranks on given parent.
| parentComm | The parent communicator |
| subRanks | The contiguous sub-ranks of parent to use |
Definition at line 2584 of file UPstream.H.
References UPstream::newCommunicator(), and UPstream::UPstream().

|
inline |
Allocate communicator for sub-ranks on given parent.
| parentComm | The parent communicator |
| subRanks | The sub-ranks of parent to use (negative values ignored) |
Definition at line 2598 of file UPstream.H.
References UPstream::newCommunicator(), and UPstream::UPstream().

|
inline |
Free allocated communicator.
Definition at line 2615 of file UPstream.H.
References UPstream::freeCommunicator().

|
delete |
|
inlinestatic |
Duplicate the given communicator.
Definition at line 2623 of file UPstream.H.
References communicator(), and UPstream::dupCommunicator().

|
inlinestatic |
Factory Method : Split the communicator on the given colour.
| parentComm | The parent communicator |
| colour | The colouring to select which ranks to include. Negative values correspond to 'ignore' |
| two_step | Use MPI_Allgather+MPI_Comm_create_group vs MPI_Comm_split |
Definition at line 2634 of file UPstream.H.
References communicator(), and UPstream::splitCommunicator().

|
inlinenoexcept |
True if communicator is non-negative (ie, was allocated).
Definition at line 2656 of file UPstream.H.
References Foam::noexcept.
|
inlinenoexcept |
|
inlinenoexcept |
Return non-const reference to this.
Definition at line 2666 of file UPstream.H.
References communicator(), and Foam::noexcept.

|
inlinenoexcept |
Release ownership of the communicator, return old value.
Leave further management to the caller
Definition at line 2676 of file UPstream.H.
References Foam::noexcept.
|
inline |
Free allocated communicator.
Definition at line 2681 of file UPstream.H.
References UPstream::freeCommunicator().

|
inline |
Allocate with contiguous sub-ranks of parent communicator.
Definition at line 2686 of file UPstream.H.
References UPstream::freeCommunicator(), UPstream::newCommunicator(), and UPstream::parent().

|
inline |
Allocate with sub-ranks of parent communicator.
Definition at line 2695 of file UPstream.H.
References UPstream::freeCommunicator(), UPstream::newCommunicator(), and UPstream::parent().

|
inline |
Take ownership, free managed communicator.
Definition at line 2704 of file UPstream.H.
References communicator(), and UPstream::freeCommunicator().

|
inline |
Swap communicator labels.
Definition at line 2715 of file UPstream.H.
References communicator().

|
inlinenoexcept |
Implicit cast to label - the same as comm().
Definition at line 2723 of file UPstream.H.
References Foam::noexcept.
|
inline |
Move assignment, takes ownership.
Definition at line 2728 of file UPstream.H.
References communicator(), and reset().

|
inlinenoexcept |
Test for equality.
Definition at line 2733 of file UPstream.H.
References communicator().

|
inlinenoexcept |
Test for inequality.
Definition at line 2741 of file UPstream.H.
References communicator().
