1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 class Errhandler {
22 public:
23
24 inline Errhandler()
25 : mpi_errhandler(MPI_ERRHANDLER_NULL) {}
26
27 inline virtual ~Errhandler() { }
28
29 inline Errhandler(MPI_Errhandler i)
30 : mpi_errhandler(i) {}
31
32
33 inline Errhandler(const Errhandler& e) : mpi_errhandler(e.mpi_errhandler) { }
34
35 inline Errhandler& operator=(const Errhandler& e) {
36 mpi_errhandler = e.mpi_errhandler;
37 return *this;
38 }
39
40
41 inline bool operator==(const Errhandler &a) {
42 return (bool)(mpi_errhandler == a.mpi_errhandler); }
43
44 inline bool operator!=(const Errhandler &a) {
45 return (bool)!(*this == a); }
46
47
48 inline Errhandler& operator= (const MPI_Errhandler &i) {
49 mpi_errhandler = i; return *this; }
50
51 inline operator MPI_Errhandler() const { return mpi_errhandler; }
52
53
54
55
56
57
58
59 virtual void Free();
60
61 private:
62 MPI_Errhandler mpi_errhandler;
63 };