CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
edm::MergeableCounter Struct Reference

#include <MergeableCounter.h>

Public Member Functions

 MergeableCounter ()
 
bool mergeProduct (MergeableCounter const &newThing)
 
void swap (MergeableCounter &iOther)
 
 ~MergeableCounter ()
 

Public Attributes

int value
 

Detailed Description

Definition at line 6 of file MergeableCounter.h.

Constructor & Destructor Documentation

◆ MergeableCounter()

edm::MergeableCounter::MergeableCounter ( )
inline

Definition at line 7 of file MergeableCounter.h.

◆ ~MergeableCounter()

edm::MergeableCounter::~MergeableCounter ( )
inline

Definition at line 8 of file MergeableCounter.h.

8 {}

Member Function Documentation

◆ mergeProduct()

bool edm::MergeableCounter::mergeProduct ( MergeableCounter const &  newThing)

Definition at line 8 of file MergeableCounter.cc.

References a.

8  {
9  if (a.value > 0 && value + a.value < a.value) {
10  edm::LogWarning("MergeableCounter|ProductsNotMergeable")
11  << "The merge would lead to an overflow of the counter" << std::endl;
12  return false;
13  }
14  value += a.value;
15  return true;
16  }
Definition: value.py:1
double a
Definition: hdecay.h:121
Log< level::Warning, false > LogWarning

◆ swap()

void edm::MergeableCounter::swap ( MergeableCounter iOther)

Definition at line 18 of file MergeableCounter.cc.

References edm::swap(), and value.

18 { std::swap(value, iOther.value); }
void swap(Association< C > &lhs, Association< C > &rhs)
Definition: Association.h:112
Definition: value.py:1

Member Data Documentation

◆ value

int edm::MergeableCounter::value