| The Gaudi Framework v32r1 (f65d50dc)

Public Member Functions | Private Types | Private Attributes | List of all members
GaudiToolLocal::Counter Class Referencefinal

simple local counter More...

Collaboration diagram for GaudiToolLocal::Counter:
[legend]

## 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

## ◆ Map

typedef std::map<std::string, long> GaudiToolLocal::Counter::Map
| private

Definition at line 89 of file GaudiTool.cpp.

## Constructor & Destructor Documentation

## ◆ Counter()

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

Definition at line 62 of file GaudiTool.cpp.

62 : m_message( std::move( msg ) ){};
GaudiToolLocal::Counter::m_message
std::string m_message
Definition: GaudiTool.cpp:91
std::move
T move(T... args)
GaudiMP.FdsRegistry.msg
msg
Definition: FdsRegistry.py:8

## ◆ ~Counter()

GaudiToolLocal::Counter::~Counter | ( |  | ) |
| inline

Definition at line 64 of file GaudiTool.cpp.

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

## Member Function Documentation

## ◆ counts()

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

current count

Definition at line 73 of file GaudiTool.cpp.

73 { return m_map[object]; }
GaudiToolLocal::Counter::m_map
Map m_map
Definition: GaudiTool.cpp:90

## ◆ decrement()

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]; }
GaudiToolLocal::Counter::m_map
Map m_map
Definition: GaudiTool.cpp:90

## ◆ increment()

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]; }
GaudiToolLocal::Counter::m_map
Map m_map
Definition: GaudiTool.cpp:90

## ◆ report()

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 }
std::endl
T endl(T... args)
GaudiToolLocal::Counter::m_map
Map m_map
Definition: GaudiTool.cpp:90
GaudiToolLocal::Counter::m_message
std::string m_message
Definition: GaudiTool.cpp:91
std::cout
GaudiTool::summaryEnabled
static bool summaryEnabled()
is summary enabled?
Definition: GaudiTool.cpp:125

## Member Data Documentation

## ◆ m_map

Map GaudiToolLocal::Counter::m_map
| private

Definition at line 90 of file GaudiTool.cpp.

## ◆ m_message

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:

- GaudiAlg/src/lib/GaudiTool.cpp