LCOV - code coverage report
Current view: top level - src/Communicate - Request.h (source / functions) Coverage Total Hit
Test: report.info Lines: 0.0 % 2 0
Test Date: 2025-05-21 12:05:18 Functions: 0.0 % 2 0

            Line data    Source code
       1              : //
       2              : // Class Request
       3              : //   A communication request handle for non-blocking communication.
       4              : //
       5              : #ifndef IPPL_MPI_REQUEST_H
       6              : #define IPPL_MPI_REQUEST_H
       7              : 
       8              : #include "Communicate/Status.h"
       9              : 
      10              : namespace ippl {
      11              :     namespace mpi {
      12              : 
      13              :         class Request {
      14              :         public:
      15              :             Request()
      16              :                 : request_m(MPI_REQUEST_NULL) {}
      17              : 
      18              :             ~Request();
      19              : 
      20              :             //             operator MPI_Request&() noexcept { return request_m; }
      21              : 
      22              :             //             operator const MPI_Request&() const noexcept { return request_m; }
      23              : 
      24            0 :             operator MPI_Request*() noexcept { return &request_m; }
      25              : 
      26              :             operator const MPI_Request*() const noexcept { return &request_m; }
      27              : 
      28              :             bool completed();
      29              : 
      30            0 :             void free() { MPI_Request_free(&request_m); }
      31              : 
      32              :             void wait() { MPI_Wait(&request_m, MPI_STATUS_IGNORE); }
      33              : 
      34              :         private:
      35              :             MPI_Request request_m;
      36              :         };
      37              :     }  // namespace mpi
      38              : }  // namespace ippl
      39              : 
      40              : #endif
        

Generated by: LCOV version 2.0-1