ATLAS Offline Software
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
ManagedMonitorToolBase::MonGroup Class Reference

A container of information describing a monitoring object. More...

#include <ManagedMonitorToolBase.h>

Collaboration diagram for ManagedMonitorToolBase::MonGroup:

Public Types

typedef std::map< std::string, TH1 * > HistMap_t
 A mapping of histogram name to histogram object. More...
 

Public Member Functions

 MonGroup (ManagedMonitorToolBase *tool, const std::string &system, Interval_t interval)
 
 MonGroup (ManagedMonitorToolBase *tool, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt)
 
 MonGroup (ManagedMonitorToolBase *tool, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt, const std::string &chain)
 
 MonGroup (ManagedMonitorToolBase *tool, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt, const std::string &chain, const std::string &merge)
 
StatusCode regHist (TH1 *h)
 Registers a TH1 (including TH2, TH3, and TProfile) to be included in the output stream using logical parameters that describe the histogram. More...
 
StatusCode getHist (TH1 *&h, const std::string &hName)
 Returns a TH1 via the pointer passed as the first argument. More...
 
StatusCode getHist (TH2 *&h, const std::string &hName)
 Returns a TH2 via the pointer passed as the first argument. More...
 
StatusCode regEfficiency (TEfficiency *e)
 Registers a TEfficiency to be included in the output stream. More...
 
StatusCode regGraph (TGraph *g)
 Registers a TGraph to be included in the output stream using logical parameters that describe the histogram. More...
 
StatusCode regTree (TTree *t)
 Registers a TTree to be included in the output stream using logical parameters that describe the histogram. More...
 
StatusCode writeAndDelete (TH1 *h)
 Write and delete a histogram. More...
 
StatusCode deregHist (TH1 *h)
 De-registers a TH1 from the THistSvc, but does NOT delete the object. More...
 
StatusCode deregGraph (TGraph *g)
 De-registers a TGraph from the THistSvc, but does NOT delete the object. More...
 
StatusCode deregObject (const std::string &objName)
 De-registers a TObject from the THistSvc, but does NOT delete the object. More...
 
StatusCode deregAll ()
 De-registers all TH1 objects from the THistSvc, but does NOT delete the objects. More...
 
const std::string & system () const
 
Interval_t interval () const
 
MgmtAttr_t histo_mgmt () const
 
const std::string & chain () const
 
const std::string & merge () const
 
HistMap_tmap ()
 A map containing all histograms registered with this MonGroup. More...
 
 MonGroup (const MonGroup &o)
 
MonGroupoperator= (const MonGroup &o)
 

Static Public Member Functions

static unsigned ncopies ()
 

Private Member Functions

 MonGroup ()
 

Static Private Member Functions

static void badusage ()
 

Private Attributes

ManagedMonitorToolBasem_tool
 
std::string m_system
 
Interval_t m_interval
 
MgmtAttr_t m_histo_mgmt
 
std::string m_chain
 
std::string m_merge
 
HistMap_t m_map
 

Detailed Description

A container of information describing a monitoring object.

Definition at line 137 of file ManagedMonitorToolBase.h.

Member Typedef Documentation

◆ HistMap_t

typedef std::map<std::string,TH1*> ManagedMonitorToolBase::MonGroup::HistMap_t

A mapping of histogram name to histogram object.

Definition at line 255 of file ManagedMonitorToolBase.h.

Constructor & Destructor Documentation

◆ MonGroup() [1/6]

ManagedMonitorToolBase::MonGroup::MonGroup ( ManagedMonitorToolBase tool,
const std::string &  system,
Interval_t  interval 
)
inline

◆ MonGroup() [2/6]

ManagedMonitorToolBase::MonGroup::MonGroup ( ManagedMonitorToolBase tool,
const std::string &  system,
Interval_t  interval,
MgmtAttr_t  histo_mgmt 
)
inline

Definition at line 144 of file ManagedMonitorToolBase.h.

◆ MonGroup() [3/6]

ManagedMonitorToolBase::MonGroup::MonGroup ( ManagedMonitorToolBase tool,
const std::string &  system,
Interval_t  interval,
MgmtAttr_t  histo_mgmt,
const std::string &  chain 
)
inline

◆ MonGroup() [4/6]

ManagedMonitorToolBase::MonGroup::MonGroup ( ManagedMonitorToolBase tool,
const std::string &  system,
Interval_t  interval,
MgmtAttr_t  histo_mgmt,
const std::string &  chain,
const std::string &  merge 
)
inline

◆ MonGroup() [5/6]

ManagedMonitorToolBase::MonGroup::MonGroup ( const MonGroup o)
inline

Definition at line 265 of file ManagedMonitorToolBase.h.

266  : m_tool(o.m_tool),
267  m_system(o.m_system),
268  //m_level(o.m_level),
269  m_interval(o.m_interval),
270  m_histo_mgmt(o.m_histo_mgmt),
271  m_chain(o.m_chain),
272  m_merge(o.m_merge),
273  m_map(o.m_map)
274  {
275  badusage();
276  }

◆ MonGroup() [6/6]

ManagedMonitorToolBase::MonGroup::MonGroup ( )
inlineprivate

Definition at line 295 of file ManagedMonitorToolBase.h.

295 { }

Member Function Documentation

◆ badusage()

void ManagedMonitorToolBase::MonGroup::badusage ( )
staticprivate

Definition at line 185 of file ManagedMonitorToolBase.cxx.

185 { ++s_mmtb_mongroup_ncopies; }

◆ chain()

const std::string& ManagedMonitorToolBase::MonGroup::chain ( ) const
inline

Definition at line 248 of file ManagedMonitorToolBase.h.

248 { return m_chain; }

◆ deregAll()

StatusCode ManagedMonitorToolBase::MonGroup::deregAll ( )

De-registers all TH1 objects from the THistSvc, but does NOT delete the objects.

Definition at line 312 of file ManagedMonitorToolBase.cxx.

314 {
315  if( m_tool != 0 ) {
316  bool isSuccess(true);
317  StatusCode sc;
318 
319  typedef HistMap_t::const_iterator MapIter_t;
320  MapIter_t mapEnd = m_map.end();
321  for( MapIter_t i = m_map.begin(); i != mapEnd; ++i ) {
322  sc = m_tool->deregHist( i->second );
323  if( !sc.isSuccess() )
324  isSuccess = false;
325  }
326 
327  m_map.clear();
328 
329  if( isSuccess )
330  return StatusCode::SUCCESS;
331  }
332 
333  return StatusCode::FAILURE;
334 }

◆ deregGraph()

StatusCode ManagedMonitorToolBase::MonGroup::deregGraph ( TGraph *  g)

De-registers a TGraph from the THistSvc, but does NOT delete the object.

Definition at line 288 of file ManagedMonitorToolBase.cxx.

290 {
291  if( m_tool != 0 ) {
292  return m_tool->deregGraph( g );
293  }
294 
295  return StatusCode::FAILURE;
296 }

◆ deregHist()

StatusCode ManagedMonitorToolBase::MonGroup::deregHist ( TH1 *  h)

De-registers a TH1 from the THistSvc, but does NOT delete the object.

Definition at line 274 of file ManagedMonitorToolBase.cxx.

276 {
277  if( m_tool != 0 ) {
278  std::string hName( h->GetName() );
279  m_map.erase( hName );
280  return m_tool->deregHist( h );
281  }
282 
283  return StatusCode::FAILURE;
284 }

◆ deregObject()

StatusCode ManagedMonitorToolBase::MonGroup::deregObject ( const std::string &  objName)

De-registers a TObject from the THistSvc, but does NOT delete the object.

Definition at line 300 of file ManagedMonitorToolBase.cxx.

302 {
303  if( m_tool != 0 ) {
304  return m_tool->deregObject( objName, *this );
305  }
306 
307  return StatusCode::FAILURE;
308 }

◆ getHist() [1/2]

StatusCode ManagedMonitorToolBase::MonGroup::getHist ( TH1 *&  h,
const std::string &  hName 
)

Returns a TH1 via the pointer passed as the first argument.

The histogram name, without the leading path or stream name, must be given as the second argument.

Definition at line 204 of file ManagedMonitorToolBase.cxx.

206 {
207  if( m_tool != 0 ) {
208  return m_tool->getHist( h, hName, *this );
209  }
210 
211  return StatusCode::FAILURE;
212 }

◆ getHist() [2/2]

StatusCode ManagedMonitorToolBase::MonGroup::getHist ( TH2 *&  h,
const std::string &  hName 
)

Returns a TH2 via the pointer passed as the first argument.

The histogram name, without the leading path or stream name, must be given as the second argument.

Definition at line 216 of file ManagedMonitorToolBase.cxx.

218 {
219  if( m_tool != 0 ) {
220  return m_tool->getHist( h, hName, *this );
221  }
222 
223  return StatusCode::FAILURE;
224 }

◆ histo_mgmt()

MgmtAttr_t ManagedMonitorToolBase::MonGroup::histo_mgmt ( ) const
inline

Definition at line 247 of file ManagedMonitorToolBase.h.

247 { return m_histo_mgmt; }

◆ interval()

Interval_t ManagedMonitorToolBase::MonGroup::interval ( ) const
inline

Definition at line 246 of file ManagedMonitorToolBase.h.

246 { return m_interval; }

◆ map()

HistMap_t& ManagedMonitorToolBase::MonGroup::map ( )
inline

A map containing all histograms registered with this MonGroup.

Definition at line 262 of file ManagedMonitorToolBase.h.

262 { return m_map; }

◆ merge()

const std::string& ManagedMonitorToolBase::MonGroup::merge ( ) const
inline

Definition at line 249 of file ManagedMonitorToolBase.h.

249 { return m_merge; }

◆ ncopies()

unsigned ManagedMonitorToolBase::MonGroup::ncopies ( )
static

Definition at line 184 of file ManagedMonitorToolBase.cxx.

184 { return s_mmtb_mongroup_ncopies; }

◆ operator=()

MonGroup& ManagedMonitorToolBase::MonGroup::operator= ( const MonGroup o)
inline

Definition at line 278 of file ManagedMonitorToolBase.h.

279  {
280  if (&o != this) {
281  m_tool = o.m_tool;
282  m_system = o.m_system;
283  //m_level = o.m_level;
284  m_interval = o.m_interval;
285  m_histo_mgmt = o.m_histo_mgmt;
286  m_chain = o.m_chain;
287  m_merge = o.m_merge;
288  m_map = o.m_map;
289  }
290  badusage();
291  return *this;
292  }

◆ regEfficiency()

StatusCode ManagedMonitorToolBase::MonGroup::regEfficiency ( TEfficiency *  e)

Registers a TEfficiency to be included in the output stream.

Definition at line 227 of file ManagedMonitorToolBase.cxx.

227  {
228  if( m_tool != 0 ) {
229  return m_tool->regEfficiency( e, *this );
230  }
231  return StatusCode::FAILURE;
232 }

◆ regGraph()

StatusCode ManagedMonitorToolBase::MonGroup::regGraph ( TGraph *  g)

Registers a TGraph to be included in the output stream using logical parameters that describe the histogram.

The optional 'dqmAlgorithm' parameter may be used to specify an algorithm to automatically check the histogram after it has been filled.

Definition at line 236 of file ManagedMonitorToolBase.cxx.

238 {
239  if( m_tool != 0 ) {
240  return m_tool->regGraph( g, *this );
241  }
242 
243  return StatusCode::FAILURE;
244 }

◆ regHist()

StatusCode ManagedMonitorToolBase::MonGroup::regHist ( TH1 *  h)

Registers a TH1 (including TH2, TH3, and TProfile) to be included in the output stream using logical parameters that describe the histogram.

The optional 'dqmAlgorithm' parameter may be used to specify an algorithm to automatically check the histogram after it has been filled.

Definition at line 191 of file ManagedMonitorToolBase.cxx.

193 {
194  if( m_tool != 0 ) {
195  std::string hName( h->GetName() );
196  m_map.emplace( hName, h );
197  return m_tool->regHist( h, *this );
198  }
199 
200  return StatusCode::FAILURE;
201 }

◆ regTree()

StatusCode ManagedMonitorToolBase::MonGroup::regTree ( TTree *  t)

Registers a TTree to be included in the output stream using logical parameters that describe the histogram.

Definition at line 248 of file ManagedMonitorToolBase.cxx.

250 {
251  if( m_tool != 0 ) {
252  return m_tool->regTree( t, *this );
253  }
254 
255  return StatusCode::FAILURE;
256 }

◆ system()

const std::string& ManagedMonitorToolBase::MonGroup::system ( ) const
inline

Definition at line 244 of file ManagedMonitorToolBase.h.

244 { return m_system; }

◆ writeAndDelete()

StatusCode ManagedMonitorToolBase::MonGroup::writeAndDelete ( TH1 *  h)

Write and delete a histogram.

Definition at line 260 of file ManagedMonitorToolBase.cxx.

262 {
263  if( m_tool != 0 ) {
264  std::string hName( h->GetName() );
265  m_map.erase( hName );
266  return m_tool->writeAndDelete( h, *this );
267  }
268 
269  return StatusCode::FAILURE;
270 }

Member Data Documentation

◆ m_chain

std::string ManagedMonitorToolBase::MonGroup::m_chain
private

Definition at line 301 of file ManagedMonitorToolBase.h.

◆ m_histo_mgmt

MgmtAttr_t ManagedMonitorToolBase::MonGroup::m_histo_mgmt
private

Definition at line 300 of file ManagedMonitorToolBase.h.

◆ m_interval

Interval_t ManagedMonitorToolBase::MonGroup::m_interval
private

Definition at line 299 of file ManagedMonitorToolBase.h.

◆ m_map

HistMap_t ManagedMonitorToolBase::MonGroup::m_map
private

Definition at line 303 of file ManagedMonitorToolBase.h.

◆ m_merge

std::string ManagedMonitorToolBase::MonGroup::m_merge
private

Definition at line 302 of file ManagedMonitorToolBase.h.

◆ m_system

std::string ManagedMonitorToolBase::MonGroup::m_system
private

Definition at line 297 of file ManagedMonitorToolBase.h.

◆ m_tool

ManagedMonitorToolBase* ManagedMonitorToolBase::MonGroup::m_tool
private

Definition at line 296 of file ManagedMonitorToolBase.h.


The documentation for this class was generated from the following files:
ManagedMonitorToolBase::MonGroup::m_chain
std::string m_chain
Definition: ManagedMonitorToolBase.h:301
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
ManagedMonitorToolBase::MonGroup::m_merge
std::string m_merge
Definition: ManagedMonitorToolBase.h:302
ManagedMonitorToolBase::MonGroup::m_tool
ManagedMonitorToolBase * m_tool
Definition: ManagedMonitorToolBase.h:296
ManagedMonitorToolBase::MonGroup::chain
const std::string & chain() const
Definition: ManagedMonitorToolBase.h:248
ManagedMonitorToolBase::getHist
virtual StatusCode getHist(TH1 *&h, const std::string &hName, const std::string &system, Interval_t interval)
Returns a TH1 via the pointer passed as the first argument.
Definition: ManagedMonitorToolBase.cxx:1408
ManagedMonitorToolBase::MonGroup::m_system
std::string m_system
Definition: ManagedMonitorToolBase.h:297
ManagedMonitorToolBase::MonGroup::m_interval
Interval_t m_interval
Definition: ManagedMonitorToolBase.h:299
ManagedMonitorToolBase::MonGroup::interval
Interval_t interval() const
Definition: ManagedMonitorToolBase.h:246
ManagedMonitorToolBase::regTree
virtual StatusCode regTree(TTree *t, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt=ATTRIB_MANAGED, const std::string &chain="", const std::string &merge="")
Registers a TTree to be included in the output stream using logical parameters that describe it.
Definition: ManagedMonitorToolBase.cxx:1545
ManagedMonitorToolBase::writeAndDelete
virtual StatusCode writeAndDelete(TH1 *h, const MonGroup &group)
Write out histogram and delete it.
Definition: ManagedMonitorToolBase.cxx:1600
ManagedMonitorToolBase::regGraph
virtual StatusCode regGraph(TGraph *g, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt=ATTRIB_MANAGED, const std::string &chain="", const std::string &merge="")
Registers a TGraph to be included in the output stream using logical parameters that describe the gra...
Definition: ManagedMonitorToolBase.cxx:1489
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
ManagedMonitorToolBase::MonGroup::m_map
HistMap_t m_map
Definition: ManagedMonitorToolBase.h:303
ManagedMonitorToolBase::MonGroup::badusage
static void badusage()
Definition: ManagedMonitorToolBase.cxx:185
ManagedMonitorToolBase::deregHist
virtual StatusCode deregHist(TH1 *h)
De-registers a TH1 from the THistSvc, but does NOT delete the object.
Definition: ManagedMonitorToolBase.cxx:1616
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
ManagedMonitorToolBase::deregGraph
virtual StatusCode deregGraph(TGraph *g)
De-registers a TGraph from the THistSvc, but does NOT delete the object.
Definition: ManagedMonitorToolBase.cxx:1624
lumiFormat.i
int i
Definition: lumiFormat.py:85
python.CaloCondTools.g
g
Definition: CaloCondTools.py:15
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ManagedMonitorToolBase::ATTRIB_MANAGED
@ ATTRIB_MANAGED
Definition: ManagedMonitorToolBase.h:130
ManagedMonitorToolBase::regEfficiency
virtual StatusCode regEfficiency(TEfficiency *e, const MonGroup &group)
Registers a TEfficiency to be included in the output stream using logical parameters that describe th...
Definition: ManagedMonitorToolBase.cxx:1444
ManagedMonitorToolBase::MonGroup::system
const std::string & system() const
Definition: ManagedMonitorToolBase.h:244
ManagedMonitorToolBase::MonGroup::histo_mgmt
MgmtAttr_t histo_mgmt() const
Definition: ManagedMonitorToolBase.h:247
AtlCoolConsole.tool
tool
Definition: AtlCoolConsole.py:452
h
ManagedMonitorToolBase::deregObject
virtual StatusCode deregObject(const std::string &objName, const std::string &system, Interval_t interval)
De-registers a TObject from the THistSvc, but does NOT delete the object.
Definition: ManagedMonitorToolBase.cxx:1632
ManagedMonitorToolBase::MonGroup::m_histo_mgmt
MgmtAttr_t m_histo_mgmt
Definition: ManagedMonitorToolBase.h:300
ManagedMonitorToolBase::regHist
virtual StatusCode regHist(TH1 *h, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt=ATTRIB_MANAGED, const std::string &chain="", const std::string &merge="")
Registers a TH1 (including TH2, TH3, and TProfile) to be included in the output stream using logical ...
Definition: ManagedMonitorToolBase.cxx:1344
merge
Definition: merge.py:1