g4tools  5.4.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
tools::wroot::mpi_ntuple_column_wise::basket_add Class Reference
Inheritance diagram for tools::wroot::mpi_ntuple_column_wise::basket_add:
Inheritance graph
[legend]
Collaboration diagram for tools::wroot::mpi_ntuple_column_wise::basket_add:
Collaboration graph
[legend]

Public Member Functions

virtual bool add_basket (basket *a_basket)
 
 basket_add (impi &a_mpi, int a_dest, int a_tag, uint32 a_id, uint32 a_icol, branch &a_parallel_branch, std::vector< icol * > &a_cols, bool a_row_mode)
 
- Public Member Functions inherited from tools::wroot::mpi_basket_add
 mpi_basket_add (impi &a_mpi, int a_dest, int a_tag, uint32 a_id, uint32 a_icol)
 
- Public Member Functions inherited from tools::wroot::branch::iadd_basket
virtual ~iadd_basket ()
 

Protected Member Functions

 basket_add (const basket_add &a_from)
 
basket_addoperator= (const basket_add &a_from)
 
- Protected Member Functions inherited from tools::wroot::mpi_basket_add
 mpi_basket_add (const mpi_basket_add &a_from)
 
mpi_basket_addoperator= (const mpi_basket_add &a_from)
 

Protected Attributes

branchm_parallel_branch
 
std::vector< icol * > & m_cols
 
bool m_row_mode
 
- Protected Attributes inherited from tools::wroot::mpi_basket_add
impim_mpi
 
int m_dest
 
int m_tag
 
uint32 m_id
 
uint32 m_icol
 

Detailed Description

Definition at line 22 of file mpi_ntuple_column_wise.

Constructor & Destructor Documentation

◆ basket_add() [1/2]

tools::wroot::mpi_ntuple_column_wise::basket_add::basket_add ( impi a_mpi,
int  a_dest,
int  a_tag,
uint32  a_id,
uint32  a_icol,
branch a_parallel_branch,
std::vector< icol * > &  a_cols,
bool  a_row_mode 
)
inline

Definition at line 36 of file mpi_ntuple_column_wise.

40  :parent(a_mpi,a_dest,a_tag,a_id,a_icol)
41  ,m_parallel_branch(a_parallel_branch)
42  ,m_cols(a_cols)
43  ,m_row_mode(a_row_mode)
44  {}

◆ basket_add() [2/2]

tools::wroot::mpi_ntuple_column_wise::basket_add::basket_add ( const basket_add a_from)
inlineprotected

Definition at line 46 of file mpi_ntuple_column_wise.

47  :branch::iadd_basket(a_from)
48  ,parent(a_from)
49  ,m_parallel_branch(a_from.m_parallel_branch)
50  ,m_cols(a_from.m_cols)
51  ,m_row_mode(a_from.m_row_mode)
52  {}

Member Function Documentation

◆ add_basket()

virtual bool tools::wroot::mpi_ntuple_column_wise::basket_add::add_basket ( basket a_basket)
inlinevirtual

Reimplemented from tools::wroot::mpi_basket_add.

Definition at line 25 of file mpi_ntuple_column_wise.

25  { // we get ownership of a_basket.
26  if(m_row_mode) {
27  m_parallel_branch.m_parallel_baskets.push_back(a_basket);
29  return true;
30  }
31  bool status = mpi_send_basket(m_mpi,m_dest,m_tag,m_id,m_icol,*a_basket);
32  delete a_basket;
33  return status;
34  }

◆ operator=()

basket_add& tools::wroot::mpi_ntuple_column_wise::basket_add::operator= ( const basket_add a_from)
inlineprotected

Definition at line 53 of file mpi_ntuple_column_wise.

53  {
54  parent::operator=(a_from);
55  m_row_mode = a_from.m_row_mode;
56  return *this;
57  }

Member Data Documentation

◆ m_cols

std::vector<icol*>& tools::wroot::mpi_ntuple_column_wise::basket_add::m_cols
protected

Definition at line 60 of file mpi_ntuple_column_wise.

◆ m_parallel_branch

branch& tools::wroot::mpi_ntuple_column_wise::basket_add::m_parallel_branch
protected

Definition at line 59 of file mpi_ntuple_column_wise.

◆ m_row_mode

bool tools::wroot::mpi_ntuple_column_wise::basket_add::m_row_mode
protected

Definition at line 61 of file mpi_ntuple_column_wise.


The documentation for this class was generated from the following file:
tools::wroot::mpi_ntuple_column_wise::basket_add::m_parallel_branch
branch & m_parallel_branch
Definition: mpi_ntuple_column_wise:59
tools::wroot::mpi_ntuple_column_wise::basket_add::m_cols
std::vector< icol * > & m_cols
Definition: mpi_ntuple_column_wise:60
tools::wroot::mpi_ntuple_column_wise::basket_add::m_row_mode
bool m_row_mode
Definition: mpi_ntuple_column_wise:61
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
tools::wroot::mpi_ntuple_column_wise::ready_to_flush_baskets
static bool ready_to_flush_baskets(std::vector< icol * > &a_cols)
Definition: mpi_ntuple_column_wise:150
tools::wroot::branch::m_parallel_baskets
std::vector< basket * > m_parallel_baskets
for parallelization :
Definition: branch:568
tools::wroot::mpi_ntuple_column_wise::flush_baskets
static bool flush_baskets(impi &a_mpi, int a_dest, int a_tag, uint32 a_id, std::vector< icol * > &a_cols)
Definition: mpi_ntuple_column_wise:159
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::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