IPPL (Independent Parallel Particle Layer)
IPPL
Loading...
Searching...
No Matches
Wait.h
Go to the documentation of this file.
1//
2// Global MPI Wait functions
3// Defines wait functions for non-blocking send/receive communication.
4//
5#ifndef IPPL_MPI_WAIT_H
6#define IPPL_MPI_WAIT_H
7
8#include <iterator>
9
10#include "Communicate/Request.h"
11
12namespace ippl {
13 namespace mpi {
14 template <std::contiguous_iterator InputIter, std::contiguous_iterator OutputIter>
15 void waitall(InputIter req_first, InputIter req_last, OutputIter sta_first) {
16 auto count = std::distance(req_first, req_last);
17 MPI_Waitall(count, *req_first, *sta_first);
18 }
19
20 void wait(Request& request, Status& status) {
21 MPI_Wait(request, status);
22 }
23
24 } // namespace mpi
25} // namespace ippl
26
27#endif
Definition Archive.h:20
void wait(Request &request, Status &status)
Definition Wait.h:20
void waitall(InputIter req_first, InputIter req_last, OutputIter sta_first)
Definition Wait.h:15