g4tools  5.4.0
mpi_basket_add
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_wroot_mpi_basket_add
5 #define tools_wroot_mpi_basket_add
6 
7 #include "mpi_send_basket"
8 #include "branch"
9 
10 namespace tools {
11 namespace wroot {
12 
13 class mpi_basket_add : public virtual branch::iadd_basket {
15 public:
16  virtual bool add_basket(basket* a_basket) {
17  bool status = mpi_send_basket(m_mpi,m_dest,m_tag,m_id,m_icol,*a_basket);
18  delete a_basket;
19  return status;
20  }
21 public:
22  mpi_basket_add(impi& a_mpi,int a_dest,int a_tag,uint32 a_id,uint32 a_icol)
23  :m_mpi(a_mpi),m_dest(a_dest),m_tag(a_tag),m_id(a_id),m_icol(a_icol)
24  {}
25 protected:
27  ,m_mpi(a_from.m_mpi),m_dest(a_from.m_dest),m_tag(a_from.m_tag)
28  ,m_id(a_from.m_id),m_icol(a_from.m_icol)
29  {}
31  m_dest = a_from.m_dest;
32  m_tag = a_from.m_tag;
33  m_id = a_from.m_id;
34  m_icol = a_from.m_icol;
35  return *this;
36  }
37 protected:
39  int m_dest;
40  int m_tag;
43 };
44 
45 }}
46 
47 #endif
tools::wroot::mpi_basket_add::add_basket
virtual bool add_basket(basket *a_basket)
Definition: mpi_basket_add:16
tools::wroot::mpi_basket_add::mpi_basket_add
mpi_basket_add(const mpi_basket_add &a_from)
Definition: mpi_basket_add:26
tools::wroot::mpi_basket_add::mpi_basket_add
mpi_basket_add(impi &a_mpi, int a_dest, int a_tag, uint32 a_id, uint32 a_icol)
Definition: mpi_basket_add:22
mpi_send_basket
tools::wroot::mpi_basket_add::m_icol
uint32 m_icol
Definition: mpi_basket_add:42
tools::wroot::mpi_basket_add::m_dest
int m_dest
Definition: mpi_basket_add:39
tools::wroot::mpi_basket_add::m_mpi
impi & m_mpi
Definition: mpi_basket_add:38
branch
tools::impi
Definition: impi:14
tools::wroot::branch::iadd_basket
Definition: branch:409
tools::wroot::mpi_basket_add
Definition: mpi_basket_add:13
tools
inlined C code : ///////////////////////////////////
Definition: aida_ntuple:26
tools::wroot::mpi_send_basket
bool mpi_send_basket(impi &a_mpi, int a_dest, int a_tag, uint32 a_id, uint32 a_icol, const basket &a_basket)
Definition: mpi_send_basket:42
tools::wroot::basket
Definition: basket:14
tools::wroot::mpi_basket_add::m_id
uint32 m_id
Definition: mpi_basket_add:41
tools::wroot::mpi_basket_add::operator=
mpi_basket_add & operator=(const mpi_basket_add &a_from)
Definition: mpi_basket_add:30
tools::wroot::mpi_basket_add::m_tag
int m_tag
Definition: mpi_basket_add:40
tools::uint32
unsigned int uint32
Definition: typedefs:71