The Gaudi Framework  v31r0 (aeb156f0)
GaudiToolLocal::Counter Class Referencefinal

simple local counter More...

Collaboration diagram for GaudiToolLocal::Counter:

Public Member Functions

 Counter (std::string msg=" Misbalance ")
 
 ~Counter ()
 
long increment (const std::string &object)
 make the increment More...
 
long decrement (const std::string &object)
 make the decrement More...
 
long counts (const std::string &object)
 current count More...
 
void report () const
 make a report More...
 

Private Types

typedef std::map< std::string, long > Map
 

Private Attributes

Map m_map
 
std::string m_message
 

Detailed Description

simple local counter

Definition at line 58 of file GaudiTool.cpp.

Member Typedef Documentation

Definition at line 89 of file GaudiTool.cpp.

Constructor & Destructor Documentation

GaudiToolLocal::Counter::Counter ( std::string  msg = " Misbalance ")
inline

Definition at line 62 of file GaudiTool.cpp.

62 : m_message( std::move( msg ) ){};
T move(T...args)
GaudiToolLocal::Counter::~Counter ( )
inline

Definition at line 64 of file GaudiTool.cpp.

64 { report(); }
void report() const
make a report
Definition: GaudiTool.cpp:75

Member Function Documentation

long GaudiToolLocal::Counter::counts ( const std::string object)
inline

current count

Definition at line 73 of file GaudiTool.cpp.

73 { return m_map[object]; }
long GaudiToolLocal::Counter::decrement ( const std::string object)
inline

make the decrement

Definition at line 71 of file GaudiTool.cpp.

71 { return --m_map[object]; }
long GaudiToolLocal::Counter::increment ( const std::string object)
inline

make the increment

Definition at line 69 of file GaudiTool.cpp.

69 { return ++m_map[object]; }
void GaudiToolLocal::Counter::report ( ) const
inline

make a report

keep the silence?

Definition at line 75 of file GaudiTool.cpp.

75  {
77  if ( !GaudiTool::summaryEnabled() ) { return; } // RETURN
78  //
79  for ( const auto& entry : m_map ) {
80  if ( entry.second ) {
81  std::cout << "GaudiTool WARNING " << m_message << "'" << entry.first << "' Counts = " << entry.second
82  << std::endl;
83  }
84  }
85  }
T endl(T...args)
static bool summaryEnabled()
is summary enabled?
Definition: GaudiTool.cpp:125

Member Data Documentation

Map GaudiToolLocal::Counter::m_map
private

Definition at line 90 of file GaudiTool.cpp.

std::string GaudiToolLocal::Counter::m_message
private

Definition at line 91 of file GaudiTool.cpp.


The documentation for this class was generated from the following file: