g4tools  5.4.0
impi
Go to the documentation of this file.
1 // Copyright (C) 2010, Guy Barrand. All rights reserved.
2 // See the file tools.license for terms.
3 
4 #ifndef tools_impi
5 #define tools_impi
6 
7 #include <string>
8 #include <vector>
9 
10 #include "typedefs"
11 
12 namespace tools {
13 
14 class impi {
15 public:
16  virtual ~impi(){}
17 public:
18  virtual bool pack(char) = 0;
19  virtual bool pack(short) = 0;
20  virtual bool pack(int) = 0;
21  virtual bool pack(unsigned int) = 0;
22  virtual bool pack(uint64) = 0;
23  virtual bool pack(int64) = 0;
24  virtual bool pack(float) = 0;
25  virtual bool pack(double) = 0;
26  virtual bool bpack(bool) = 0;
27  virtual bool spack(const std::string&) = 0;
28  virtual bool vpack(const std::vector<unsigned int>&) = 0;
29  virtual bool vpack(const std::vector<int>&) = 0;
30  virtual bool vpack(const std::vector<double>&) = 0;
31  virtual bool pack(uint32,const char*) = 0;
32  virtual bool pack(uint32,const int*) = 0;
33 
34  virtual bool unpack(char&) = 0;
35  virtual bool unpack(short&) = 0;
36  virtual bool unpack(int&) = 0;
37  virtual bool unpack(unsigned int&) = 0;
38  virtual bool unpack(uint64&) = 0;
39  virtual bool unpack(int64&) = 0;
40  virtual bool unpack(float&) = 0;
41  virtual bool unpack(double&) = 0;
42  virtual bool bunpack(bool&) = 0;
43  virtual bool sunpack(std::string&) = 0;
44  virtual bool vunpack(std::vector<unsigned int>&) = 0;
45  virtual bool vunpack(std::vector<int>&) = 0;
46  virtual bool vunpack(std::vector<double>&) = 0;
47  virtual bool unpack(uint32&,char*&) = 0;
48  virtual bool unpack(uint32&,int*&) = 0;
49 
50  virtual void pack_reset() = 0;
51  virtual bool send_buffer(int,int) = 0;
52 
53  virtual bool wait_buffer(int rank,int src,int tag,int& probe_src,bool verbose = false) = 0;
54  virtual bool wait_buffer(int rank,int tag,int& probe_src,bool verbose = false) = 0; //MPI_ANY_SOURCE.
55 };
56 
57 }
58 
59 #endif
tools::impi::bunpack
virtual bool bunpack(bool &)=0
tools::impi::pack
virtual bool pack(float)=0
tools::uint64
unsigned long long uint64
Definition: typedefs:72
tools::impi::unpack
virtual bool unpack(uint32 &, char *&)=0
tools::int64
long long int64
Definition: typedefs:67
tools::impi::pack
virtual bool pack(int)=0
tools::impi::pack
virtual bool pack(int64)=0
typedefs
tools::impi::unpack
virtual bool unpack(unsigned int &)=0
tools::impi::pack
virtual bool pack(double)=0
tools::impi::unpack
virtual bool unpack(int64 &)=0
tools::impi::unpack
virtual bool unpack(uint32 &, int *&)=0
tools::impi::vpack
virtual bool vpack(const std::vector< double > &)=0
tools::impi::bpack
virtual bool bpack(bool)=0
tools::impi::unpack
virtual bool unpack(int &)=0
tools::impi::pack_reset
virtual void pack_reset()=0
tools::impi::unpack
virtual bool unpack(double &)=0
tools::impi::vpack
virtual bool vpack(const std::vector< unsigned int > &)=0
tools::impi::pack
virtual bool pack(uint32, const int *)=0
tools::impi::vunpack
virtual bool vunpack(std::vector< double > &)=0
tools::impi::pack
virtual bool pack(uint64)=0
tools::impi::pack
virtual bool pack(short)=0
tools::impi::pack
virtual bool pack(unsigned int)=0
tools::impi
Definition: impi:14
tools::impi::wait_buffer
virtual bool wait_buffer(int rank, int tag, int &probe_src, bool verbose=false)=0
tools::impi::unpack
virtual bool unpack(short &)=0
tools::impi::wait_buffer
virtual bool wait_buffer(int rank, int src, int tag, int &probe_src, bool verbose=false)=0
tools::impi::unpack
virtual bool unpack(float &)=0
tools
inlined C code : ///////////////////////////////////
Definition: aida_ntuple:26
tools::impi::vpack
virtual bool vpack(const std::vector< int > &)=0
tools::impi::~impi
virtual ~impi()
Definition: impi:16
tools::impi::pack
virtual bool pack(char)=0
tools::impi::unpack
virtual bool unpack(uint64 &)=0
tools::impi::vunpack
virtual bool vunpack(std::vector< int > &)=0
tools::impi::vunpack
virtual bool vunpack(std::vector< unsigned int > &)=0
tools::impi::pack
virtual bool pack(uint32, const char *)=0
tools::impi::unpack
virtual bool unpack(char &)=0
tools::uint32
unsigned int uint32
Definition: typedefs:71
tools::impi::spack
virtual bool spack(const std::string &)=0
tools::impi::sunpack
virtual bool sunpack(std::string &)=0
tools::impi::send_buffer
virtual bool send_buffer(int, int)=0