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

|
delete |
No copy assignment.
|
inlinestatic |
Duplicate the given communicator.
Definition at line 2315 of file UPstream.H.
References Foam::constant::universal::c, 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 2327 of file UPstream.H.
References Foam::constant::universal::c, and UPstream::splitCommunicator().

|
inlinenoexcept |
True if communicator is non-negative (ie, was allocated)
Definition at line 2348 of file UPstream.H.
|
inlinenoexcept |
The communicator label.
Definition at line 2353 of file UPstream.H.
|
inlinenoexcept |
Return non-const reference to this.
Definition at line 2358 of file UPstream.H.
|
inlinenoexcept |
Release ownership of the communicator, return old value.
Leave further management to the caller
Definition at line 2368 of file UPstream.H.
References Foam::constant::universal::c.
|
inline |
Free allocated communicator.
Definition at line 2373 of file UPstream.H.
References UPstream::freeCommunicator().

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

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

|
inline |
Take ownership, free managed communicator.
Definition at line 2396 of file UPstream.H.
References Foam::constant::universal::c, and UPstream::freeCommunicator().

|
inline |
Swap communicator labels.
Definition at line 2407 of file UPstream.H.
References Foam::constant::universal::c.
|
inlinenoexcept |
Implicit cast to label - the same as comm()
Definition at line 2415 of file UPstream.H.
|
inline |
Move assignment, takes ownership.
Definition at line 2420 of file UPstream.H.
References Foam::constant::universal::c, and reset().

|
inlinenoexcept |
Test for equality.
Definition at line 2425 of file UPstream.H.
References Foam::constant::universal::c.
|
inlinenoexcept |
Test for inequality.
Definition at line 2433 of file UPstream.H.
References Foam::constant::universal::c.