source: XIOS/dev/branch_openmp/extern/ep_dev/ep_request.hpp @ 1502

Last change on this file since 1502 was 1502, checked in by yushan, 6 years ago

save dev

File size: 801 bytes
Line 
1#ifndef EP_REQUEST_HPP_INCLUDED
2#define EP_REQUEST_HPP_INCLUDED
3
4#include "ep_comm.hpp"
5
6namespace ep_lib
7{
8 
9  class ep_request
10  {
11    public:
12
13      void* mpi_request;
14
15      int type; //! type of the non-blocking communication.
16                // 1: Isend
17                // 2:Irecv
18                // 3:Imrecv
19                // 4:Issend
20      int state; // 0: new
21                 // 1: imrecvd
22                 // 2: tested or waited
23                   
24      void* buf;
25
26      int ep_src;
27      int ep_tag;
28      void* ep_datatype;
29
30      ep_comm *comm;    //! EP communicator related to the communication
31
32      ep_request() {}
33      ep_request(void* request);
34      bool operator == (ep_request right);
35  };
36 
37  typedef ep_request* MPI_Request;
38
39
40}
41
42
43
44#endif // EP_REQUEST_HPP_INCLUDED
45
Note: See TracBrowser for help on using the repository browser.