source: XIOS/dev/branch_openmp/extern/ep_dev/ep_type.hpp @ 1511

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

save dev

File size: 1.4 KB
RevLine 
[1381]1#ifndef EP_TYPE_HPP_INCLUDED
2#define EP_TYPE_HPP_INCLUDED
3
4
5#include <iostream>
6#include <stdlib.h>
7#include <stdio.h>
8#include <list>
9#include <map>
10#include <omp.h>
11#include <vector>
12#include <numeric>
13#include <bitset>
14#include <algorithm>
15#include <assert.h>
16#include <math.h>
17#include <string.h>
18
19#ifdef _Debug
20#define Debug(x) std::cout << x << std::endl
21#else
22#define Debug(x)
23#endif
24
[1503]25#ifdef _Memory_check
26#define memcheck(x) std::cout << x << std::endl
27#else
28#define memcheck(x)
29#endif
30
31
[1381]32#define BUFFER_SIZE 10000
33
[1500]34#include "ep_status.hpp"
35#include "ep_request.hpp"
36#include "ep_info.hpp"
37#include "ep_message.hpp"
38#include "ep_barrier.hpp"
39#include "ep_comm.hpp"
40#include "ep_intercomm.hpp"
41#include "ep_window.hpp"
[1381]42
43
44
45namespace ep_lib
46{
47
48  class ep_communicator;
49  class ep_intercomm;
50
51
52  class MPI_Aint
53  {
54    public:
55
56    void* mpi_aint;
57
58    MPI_Aint() {}
59    MPI_Aint(void* aint);
60    MPI_Aint(int aint);
[1385]61    MPI_Aint operator=(int a);
[1381]62  };
63
64  class MPI_Fint
65  {
66    public:
[1499]67 
[1381]68    void* mpi_fint;
[1499]69   
[1381]70    MPI_Fint() {}
71    MPI_Fint(void* fint);
[1499]72                                 
[1381]73  };
[1499]74 
[1500]75 
[1381]76
77
78  static MPI_Comm *passage;
79
80  static int TAG = 40000;
81
82  static std::list<std::pair<std::pair<int, int>, MPI_Comm * > > tag_list;
83
[1511]84  static std::list< std::pair<std::pair<int, int> , std::pair<MPI_Comm * , std::pair<int, int> > > > intercomm_list;
85
[1381]86  static std::map<std::pair<int, int>, MPI_Comm >  fc_comm_map;
87
[1499]88
[1381]89}
90
91
92
93#endif // EP_TYPE_HPP_INCLUDED
94
Note: See TracBrowser for help on using the repository browser.