DNDSR 0.2.1
Distributed Numeric Data Structure for CFV
Loading...
Searching...
No Matches
DNDS::MPIReqHolder Struct Reference

RAII vector of MPI_Requests that frees each non-null handle when destroyed. More...

#include <MPI.hpp>

Inheritance diagram for DNDS::MPIReqHolder:
[legend]
Collaboration diagram for DNDS::MPIReqHolder:
[legend]

Public Types

using tSelf = MPIReqHolder
 
using tBase = tMPI_reqVec
 

Public Member Functions

template<typename... Args>
 MPIReqHolder (shared_ctor_guard g, Args &&...args)
 Perfect-forwarding factory; returns shared_ptr<MPIReqHolder>.
 
 ~MPIReqHolder ()
 
 MPIReqHolder (const MPIReqHolder &)=delete
 
MPIReqHolderoperator= (const MPIReqHolder &)=delete
 
 MPIReqHolder (MPIReqHolder &&)=delete
 
MPIReqHolderoperator= (MPIReqHolder &&)=delete
 
void clear ()
 Free every non-null request and empty the vector.
 

Static Public Member Functions

template<typename... Args>
static ssp< MPIReqHoldercreate (Args &&...args)
 Only public path to construct an instance.
 

Detailed Description

RAII vector of MPI_Requests that frees each non-null handle when destroyed.

Mirror of MPITypePairHolder for MPI requests (persistent or transient). Used by ArrayTransformer for send/recv request sets. Construction is likewise channelled through the static create factory.

Definition at line 417 of file MPI.hpp.

Member Typedef Documentation

◆ tBase

Definition at line 420 of file MPI.hpp.

◆ tSelf

Definition at line 419 of file MPI.hpp.

Constructor & Destructor Documentation

◆ MPIReqHolder() [1/3]

template<typename... Args>
DNDS::MPIReqHolder::MPIReqHolder ( shared_ctor_guard  g,
Args &&...  args 
)
inline

Perfect-forwarding factory; returns shared_ptr<MPIReqHolder>.

Definition at line 431 of file MPI.hpp.

Here is the call graph for this function:

◆ ~MPIReqHolder()

DNDS::MPIReqHolder::~MPIReqHolder ( )
inline

Definition at line 445 of file MPI.hpp.

Here is the call graph for this function:

◆ MPIReqHolder() [2/3]

DNDS::MPIReqHolder::MPIReqHolder ( const MPIReqHolder )
delete

◆ MPIReqHolder() [3/3]

DNDS::MPIReqHolder::MPIReqHolder ( MPIReqHolder &&  )
delete

Member Function Documentation

◆ clear()

void DNDS::MPIReqHolder::clear ( )
inline

Free every non-null request and empty the vector.

Definition at line 459 of file MPI.hpp.

Here is the caller graph for this function:

◆ create()

template<typename... Args>
static ssp< MPIReqHolder > DNDS::MPIReqHolder::create ( Args &&...  args)
inlinestatic

Only public path to construct an instance.

Definition at line 441 of file MPI.hpp.

Here is the caller graph for this function:

◆ operator=() [1/2]

MPIReqHolder & DNDS::MPIReqHolder::operator= ( const MPIReqHolder )
delete

◆ operator=() [2/2]

MPIReqHolder & DNDS::MPIReqHolder::operator= ( MPIReqHolder &&  )
delete

The documentation for this struct was generated from the following file: