ATLAS Offline Software
Loading...
Searching...
No Matches
ManagedMonitorToolBase.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ManagedMonitorToolBase_H
6#define ManagedMonitorToolBase_H
7
8#include <string>
9#include <vector>
10#include <map>
11#include <set>
12
13#include "GaudiKernel/ITHistSvc.h"
14#include "GaudiKernel/ServiceHandle.h"
15#include "GaudiKernel/ToolHandle.h"
16#include "GaudiKernel/StatusCode.h"
17
28
29#include "TGraph.h"
30#include "TH1.h"
31#include "TH2.h"
32#include "TTree.h"
33#include "TEfficiency.h"
34
35class EventContext;
36namespace Trig {
38}
39
46
48{
49 public:
50
64
76
77
81
82 class MonGroup {
83 public:
84
88
92
93 inline MonGroup( ManagedMonitorToolBase* tool, const std::string& system,
94 Interval_t interval, MgmtAttr_t histo_mgmt, const std::string& chain )
96
97 inline MonGroup( ManagedMonitorToolBase* tool, const std::string& system,
98 Interval_t interval, MgmtAttr_t histo_mgmt, const std::string& chain,
99 const std::string& merge )
101
102
109 StatusCode regHist( TH1* h );
110
111
117
118 StatusCode getHist( TH1*& h, const std::string& hName );
119
120
126
127 StatusCode getHist( TH2*& h, const std::string& hName );
128
129
133
134 StatusCode regEfficiency( TEfficiency* e );
135
136
143
144 StatusCode regGraph( TGraph* g );
145
146
151
152 StatusCode regTree( TTree* t );
153
157
158 StatusCode writeAndDelete( TH1* h);
159
160
164
165 StatusCode deregHist( TH1* h );
166
167
171
172 StatusCode deregGraph( TGraph* g );
173
174
178
179 StatusCode deregObject( const std::string& objName );
180
181
185
186 StatusCode deregAll();
187
188
189 inline const std::string& system() const { return m_system; }
190 inline Interval_t interval() const { return m_interval; }
191 inline MgmtAttr_t histo_mgmt() const { return m_histo_mgmt; }
192 inline const std::string& chain() const { return m_chain; }
193 inline const std::string& merge() const { return m_merge; }
194
198
199 typedef std::map<std::string,TH1*> HistMap_t;
200
201
205
206 inline HistMap_t& map() { return m_map; }
207
208 //Copy and assignment constructors! To forbid eventually, but for now we monitor their usage:
209 MonGroup( const MonGroup & o )
210 : m_tool(o.m_tool),
212 //m_level(o.m_level),
215 m_chain(o.m_chain),
216 m_merge(o.m_merge),
217 m_map(o.m_map)
218 {
219 badusage();
220 }
221
223 {
224 if (&o != this) {
225 m_tool = o.m_tool;
226 m_system = o.m_system;
227 //m_level = o.m_level;
230 m_chain = o.m_chain;
231 m_merge = o.m_merge;
232 m_map = o.m_map;
233 }
234 badusage();
235 return *this;
236 }
237 static unsigned ncopies();
238 private:
239 inline MonGroup() { }
241 std::string m_system;
244 std::string m_chain;
245 std::string m_merge;
247 static void badusage();
248 };
249
250
251 template <class T>
253 public:
254 inline MgmtParams(T* templateHist, const MonGroup& group)
255 : m_templateHist(templateHist), m_group(group) { }
256
259
260 };
261
262
267
269 public:
270 virtual ~StreamNameFcn(){};
271
276
277 virtual std::string getStreamName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, bool usePreviousInterval=false ) = 0;
278
282
283 virtual std::string getDirectoryName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, const bool usePreviousInterval ) = 0;
284
299 static void parseString(const std::string& streamName, std::string& root, std::string& rem);
300 };
301
305
306 static std::string intervalEnumToString( Interval_t interval );
307
308
312
313 static Interval_t intervalStringToEnum( const std::string& str );
314
315
316 ManagedMonitorToolBase( const std::string & type, const std::string & name,
317 const IInterface* parent );
318
319 virtual ~ManagedMonitorToolBase();
320
321
325
327
328
329 virtual StatusCode initialize();
330
334
335 virtual StatusCode bookHists();
336
341
342 virtual StatusCode fillHists(const EventContext& ctx);
343
347
348 virtual StatusCode finalHists();
349
350
354
355 virtual StatusCode bookHistograms();
356
357
361
362 virtual StatusCode bookHistogramsRecurrent();
363
364
368
369 virtual StatusCode fillHistograms(const EventContext& ctx);
370
371
375
376 virtual StatusCode procHistograms( );
377
378
382
383 virtual void setMonManager( AthenaMonManager* manager );
384
385
390 virtual StatusCode regHist( TH1* h, const std::string& system,
391 Interval_t interval, MgmtAttr_t histo_mgmt = ATTRIB_MANAGED, const std::string& chain = "", const std::string& merge = "" );
392
398 virtual StatusCode regHist( TH1* h, const MonGroup& group );
399
400
406
407 virtual StatusCode getHist( TH1*& h, const std::string& hName, const std::string& system, Interval_t interval );
408
414
415 virtual StatusCode getHist( TH1*& h, const std::string& hName, const MonGroup& group );
416
417
423
424 virtual StatusCode getHist( TH2*& h, const std::string& hName, const std::string& system,
425 Interval_t interval );
426
432
433 virtual StatusCode getHist( TH2*& h, const std::string& hName, const MonGroup& group );
434
435
440 virtual StatusCode regEfficiency( TEfficiency* e, const MonGroup& group );
441
442
443
448
449
450 virtual StatusCode regGraph( TGraph* g, const std::string& system,
451 Interval_t interval, MgmtAttr_t histo_mgmt = ATTRIB_MANAGED, const std::string& chain = "", const std::string& merge = "" );
452
457
458 virtual StatusCode regGraph( TGraph* g, const MonGroup& group );
459
460
465
466 virtual StatusCode regTree( TTree* t, const std::string& system,
467 Interval_t interval, MgmtAttr_t histo_mgmt = ATTRIB_MANAGED, const std::string& chain = "", const std::string& merge = "" );
468
473
474 virtual StatusCode regTree( TTree* t, const MonGroup& group );
475
476
480
481 virtual StatusCode writeAndDelete( TH1* h, const MonGroup& group );
482
483
487
488 virtual StatusCode deregHist( TH1* h );
489
490
494
495 virtual StatusCode deregGraph( TGraph* g );
496
497
502
503 virtual StatusCode deregObject( const std::string& objName, const std::string& system, Interval_t interval );
504
505
510
511 virtual StatusCode deregObject( const std::string& objName, const MonGroup& group );
512
513
519
520 virtual StatusCode setupOutputStreams( std::vector<std::string> Mapping
521 = std::vector<std::string>() );
522
523
528
529 virtual StatusCode runStat();
530
531
536
537 virtual StatusCode checkHists( bool calledFromFinalize );
538
539 virtual bool preSelector();
540
541
546 virtual float lbAverageInteractionsPerCrossing (const EventContext& ctx) const;
547
552 virtual float lbInteractionsPerCrossing (const EventContext& ctx) const;
553
558 virtual float lbAverageLuminosity (const EventContext& ctx) const;
559
564 virtual float lbLuminosityPerBCID (const EventContext& ctx) const;
565
570 virtual double lbDuration (const EventContext& ctx) const;
571
576 virtual float lbAverageLivefraction (const EventContext& ctx) const;
577
582 virtual float livefractionPerBCID (const EventContext& ctx) const;
583
588 virtual double lbLumiWeight (const EventContext& ctx) const;
589
590
591 protected:
592 std::map< Interval_t, std::vector< MgmtParams<TH1> > > m_templateHistograms;
593 // Runs over the vector of managed histograms, register clonned histogram and saves it to a file.
594 StatusCode regManagedHistograms(std::vector< MgmtParams<TH1> >& templateHistograms);
595
596 std::map< Interval_t, std::vector< MgmtParams<TGraph> > > m_templateGraphs;
597 // Runs over the vector of managed graphs, register clonned graph and saves it to a file.
598 StatusCode regManagedGraphs(std::vector< MgmtParams<TGraph> >& templateGraphs);
599
600 std::map< Interval_t, std::vector< MgmtParams<TTree> > > m_templateTrees;
601 // Runs over the vector of managed trees, register clonned tree and saves it to a file.
602 StatusCode regManagedTrees(std::vector< MgmtParams<TTree> >& templateTrees);
603
604 std::map< Interval_t, std::vector< MgmtParams<TEfficiency> > > m_templateEfficiencies;
605 // Runs over the vector of managed graphs, register clonned graph and saves it to a file.
606 StatusCode regManagedEfficiencies(std::vector< MgmtParams<TEfficiency> >& templateEfficiencies);
607
608 std::vector<std::string> m_vTrigChainNames, m_vTrigGroupNames;
609 StatusCode parseList(const std::string&, std::vector<std::string>&);
610 void updateTriggersForGroups(std::vector<std::string>&);
611
612 StatusCode registerMetadata(const std::string& streamName, const std::string& hName, const MonGroup& group);
613
618 StatusCode THistSvc_deReg_fixTGraph(TFile* file, TGraph* theGraph, std::string& directoryName);
619
620 inline unsigned int get_nEvents() const {
621 return m_nEvents;
622 }
623
624 inline long get_procNEventsProp() const {
625 return m_procNEventsProp;
626 }
627
629 public:
630 OutputMetadata( TTree* metadata );
631 virtual ~OutputMetadata();
634
635 virtual void fill( const std::string& name,
636 Interval_t interval,
637 std::string trigger,
638 std::string merge );
639
640 protected:
641 void copyString( char* to, const std::string& from );
642 const int m_charArrSize;
645 //char* m_levelData;
649 };
650
651
653 public:
654 DefaultStream( const std::string& fileKey )
655 : m_fileKey(fileKey) { }
656 virtual ~DefaultStream() { }
657 virtual std::string getStreamName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, bool usePreviousInterval=false );
658 virtual std::string getDirectoryName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, const bool usePreviousInterval );
659
660 private:
661 const std::string m_fileKey;
662 };
663
664
666 public:
667 virtual std::string getStreamName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, bool usePreviousInterval=false );
668 virtual std::string getDirectoryName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, const bool usePreviousInterval );
669 };
670
671
673 public:
674 virtual std::string getStreamName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, bool usePreviousInterval=false );
675 virtual std::string getDirectoryName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, const bool usePreviousInterval );
676 };
677
678
680 public:
681 OfflineStream( const std::string& fileKey, AthenaMonManager::DataType_t /*dataType*/,
682 AthenaMonManager::Environment_t /*environment*/ )
683 : m_fileKey(fileKey),
685 m_prev_lumi_block(0) { }
686
687 virtual ~OfflineStream() { }
688 virtual std::string getStreamName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, bool usePreviousInterval=false );
689 virtual std::string getDirectoryName( const ManagedMonitorToolBase* tool, const MonGroup& group, const std::string& objName, const bool usePreviousInterval );
690 void updateRunLB();
691
692 private:
694 const std::string m_fileKey;
695 //AthenaMonManager::DataType_t m_dataType;
696 //AthenaMonManager::Environment_t m_environment;
698 std::set<std::string> m_ebNames;
699 void getLBrange(int*,int*,int,int);
700 };
701
702 virtual bool trigChainsArePassed(std::vector<std::string>&);
703
704 virtual StreamNameFcn* getNewStreamNameFcn() const;
705
706
713
717 bool newLowStatFlag() const { return m_newLowStat; }
718 bool newLumiBlockFlag() const { return m_newLumiBlock; }
719 bool newRunFlag() const { return m_newRun; }
720 bool newEventsBlockFlag() const { return m_newEventsBlock; }
722 bool endOfLowStatFlag() const { return m_endOfLowStat; }
723 bool endOfLumiBlockFlag() const { return m_endOfLumiBlock; }
724 bool endOfRunFlag() const { return m_endOfRun; }
725
726private:
731
732protected:
733 typedef std::map<std::string,OutputMetadata*> MDMap_t;
735
737
738 std::string m_managerNameProp;
739
740 std::string m_fileKey;
741 std::string m_dataTypeStr;
742 std::string m_environmentStr;
743 unsigned int m_detailLevel;
744
747
749
751 // The TrigDecisionTool, clients normally should not have to set this
752 PublicToolHandle<Trig::ITrigDecisionTool> m_trigDecTool {this, "TrigDecisionTool",""};
753 // The TriggerTranslator
754 PublicToolHandle<ITriggerTranslatorTool> m_trigTranslator {this,"TriggerTranslatorTool",""};
755 // The filter tools, to be specified in jobOptions
756 ToolHandleArray<IDQFilterTool> m_DQFilterTools {this,"FilterTools",{}};
757
759 std::string m_path;
763
765
766 unsigned int m_lastLumiBlock;
767 unsigned int m_lastRun;
769
770 unsigned int m_nEvents;
772 unsigned int m_nLumiBlocks;
774
775
776 private:
782 public:
785 private:
786 TDirectory* m_gd;
787 TFile* m_gf;
788 };
789
790 //bool findStream(const std::string& id, std::string& stream, std::string& rem) const;
791 //std::string dirname(std::string& dir) const;
792
794 {this,"LuminosityCondDataKey","LuminosityCondData","SG Key of LuminosityCondData object"};
796 {this,"LBDurationCondDataKey","LBDurationCondData","SG Key of LBDurationCondData object"};
798 {this,"TrigLiveFractionCondDataKey","TrigLiveFractionCondData","SG Key of TrigLiveFractionCondData object"};
799
804
805 // Use private implementation idiom for more flexible development.
806 class Imp;
808
809};
810
811#endif
Hold luminosity block duration data produced from /TRIGGER/LUMI/LBLB.
Hold luminosity data produced by LuminosityCondAlg.
Hold live fraction data produced by TrigLiveFractionCondAlg.
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Header file for AthHistogramAlgorithm.
An Algorithm that manages a set of modules, each inheriting from ManagedMonitorToolBase,...
DataType_t
An enumeration of the different types of data the monitoring application may be running over.
Environment_t
An enumeration of the different types of running environment the monitoring application may be in.
virtual std::string getStreamName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, bool usePreviousInterval=false)
A function that converts a MonGroup of logical parameters into a physical output stream name.
virtual std::string getDirectoryName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, const bool usePreviousInterval)
A function that returns TDirectory path in a file that corresponds to a given MonGroup and object nam...
MgmtParams(T *templateHist, const MonGroup &group)
A container of information describing a monitoring object.
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 & operator=(const MonGroup &o)
StatusCode deregHist(TH1 *h)
De-registers a TH1 from the THistSvc, but does NOT delete the object.
StatusCode getHist(TH1 *&h, const std::string &hName)
Returns a TH1 via the pointer passed as the first argument.
MonGroup(ManagedMonitorToolBase *tool, const std::string &system, Interval_t interval)
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 ...
StatusCode deregObject(const std::string &objName)
De-registers a TObject from the THistSvc, but does NOT delete the object.
StatusCode writeAndDelete(TH1 *h)
Write and delete a histogram.
HistMap_t & map()
A map containing all histograms registered with this MonGroup.
StatusCode deregAll()
De-registers all TH1 objects from the THistSvc, but does NOT delete the objects.
std::map< std::string, TH1 * > HistMap_t
A mapping of histogram name to histogram object.
StatusCode regEfficiency(TEfficiency *e)
Registers a TEfficiency to be included in the output stream.
StatusCode regGraph(TGraph *g)
Registers a TGraph to be included in the output stream using logical parameters that describe the his...
StatusCode deregGraph(TGraph *g)
De-registers a TGraph from the THistSvc, but does NOT delete the object.
StatusCode regTree(TTree *t)
Registers a TTree to be included in the output stream using logical parameters that describe the hist...
virtual std::string getDirectoryName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, const bool usePreviousInterval)
A function that returns TDirectory path in a file that corresponds to a given MonGroup and object nam...
virtual std::string getStreamName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, bool usePreviousInterval=false)
A function that converts a MonGroup of logical parameters into a physical output stream name.
virtual std::string getDirectoryName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, const bool usePreviousInterval)
A function that returns TDirectory path in a file that corresponds to a given MonGroup and object nam...
OfflineStream(const std::string &fileKey, AthenaMonManager::DataType_t, AthenaMonManager::Environment_t)
virtual std::string getStreamName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, bool usePreviousInterval=false)
A function that converts a MonGroup of logical parameters into a physical output stream name.
virtual std::string getDirectoryName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, const bool usePreviousInterval)
A function that returns TDirectory path in a file that corresponds to a given MonGroup and object nam...
virtual std::string getStreamName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, bool usePreviousInterval=false)
A function that converts a MonGroup of logical parameters into a physical output stream name.
void copyString(char *to, const std::string &from)
OutputMetadata & operator=(const OutputMetadata &)=delete
OutputMetadata(const OutputMetadata &)=delete
A function-object base class allowing the specific implementation of getStreamName to be decided at r...
static void parseString(const std::string &streamName, std::string &root, std::string &rem)
A helper non-virtual function, parses id string.
virtual std::string getStreamName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, bool usePreviousInterval=false)=0
A function that converts a MonGroup of logical parameters into a physical output stream name.
virtual std::string getDirectoryName(const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, const bool usePreviousInterval)=0
A function that returns TDirectory path in a file that corresponds to a given MonGroup and object nam...
virtual double lbDuration(const EventContext &ctx) const
Luminosity block time (in seconds).
SG::ReadCondHandleKey< LuminosityCondData > m_lumiDataKey
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 ...
StatusCode regManagedTrees(std::vector< MgmtParams< TTree > > &templateTrees)
virtual StatusCode writeAndDelete(TH1 *h, const MonGroup &group)
Write out histogram and delete it.
ToolHandleArray< IDQFilterTool > m_DQFilterTools
virtual float lbAverageLivefraction(const EventContext &ctx) const
Average luminosity livefraction.
virtual float lbAverageLuminosity(const EventContext &ctx) const
Average luminosity (in ub-1 s-1 => 10^30 cm-2 s-1).
virtual StatusCode fillHistograms(const EventContext &ctx)
An inheriting class should either override this function or fillHists().
virtual StatusCode setupOutputStreams(std::vector< std::string > Mapping=std::vector< std::string >())
This implementation does nothing—streams in this class should be managed by the AthenaMonManager.
virtual StatusCode deregHist(TH1 *h)
De-registers a TH1 from the THistSvc, but does NOT delete the object.
virtual float lbInteractionsPerCrossing(const EventContext &ctx) const
Instantaneous number of interactions, i.e.
virtual StatusCode deregGraph(TGraph *g)
De-registers a TGraph from the THistSvc, but does NOT delete the object.
StatusCode parseList(const std::string &, std::vector< std::string > &)
virtual float lbLuminosityPerBCID(const EventContext &ctx) const
Instantaneous luminosity.
SG::ReadCondHandleKey< TrigLiveFractionCondData > m_trigLiveFractionDataKey
virtual StatusCode bookHistogramsRecurrent()
An inheriting class should either override this function, bookHists() or bookHistograms().
std::set< Interval_t > m_supportedIntervalsForRebooking
StatusCode THistSvc_deReg_fixTGraph(TFile *file, TGraph *theGraph, std::string &directoryName)
Fixes THistSvc->deReg(obj) when obj is TGraph instance.
std::vector< std::string > m_vTrigGroupNames
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.
std::map< Interval_t, std::vector< MgmtParams< TH1 > > > m_templateHistograms
Interval_t
An enumeration describing the interval over which a particular monitoring object is filled (i....
PublicToolHandle< Trig::ITrigDecisionTool > m_trigDecTool
StatusCode regManagedGraphs(std::vector< MgmtParams< TGraph > > &templateGraphs)
std::map< Interval_t, std::vector< MgmtParams< TGraph > > > m_templateGraphs
ServiceHandle< ITHistSvc > m_THistSvc
bool newLowStatIntervalFlag() const
Flag functions allowing clients to determine when to book new and process old histograms; values are ...
PublicToolHandle< ITriggerTranslatorTool > m_trigTranslator
virtual StatusCode bookHists()
Calls bookHists( true, true, true ) and initializes lumiBlock and run numbers.
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.
virtual StatusCode bookHistograms()
An inheriting class should either override this function or bookHists().
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.
ManagedMonitorToolBase(const std::string &type, const std::string &name, const IInterface *parent)
SG::ReadCondHandleKey< LBDurationCondData > m_lbDurationDataKey
std::map< std::string, OutputMetadata * > MDMap_t
virtual double lbLumiWeight(const EventContext &ctx) const
Average Integrated Luminosity Live Fraction.
AthenaMonManager::Environment_t m_environment
StatusCode regManagedEfficiencies(std::vector< MgmtParams< TEfficiency > > &templateEfficiencies)
StatusCode registerMetadata(const std::string &streamName, const std::string &hName, const MonGroup &group)
MgmtAttr_t
An enumeration describing how the class handles the histogram.
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...
static Interval_t intervalStringToEnum(const std::string &str)
Converts a string to the corresponding Interval_t.
unsigned int get_nEvents() const
std::vector< std::string > m_vTrigChainNames
std::map< Interval_t, std::vector< MgmtParams< TTree > > > m_templateTrees
virtual StatusCode fillHists(const EventContext &ctx)
Calls fillHists( bool, bool, bool ); if an eventBlock,lumiBlock, or run has turned over,...
static std::string intervalEnumToString(Interval_t interval)
Converts a Interval_t to a string of the same name.
virtual StatusCode finalHists()
Calls procHists( true, true, true ).
virtual void setMonManager(AthenaMonManager *manager)
Takes a pointer to a managing object to get information from it when needed.
virtual float livefractionPerBCID(const EventContext &ctx) const
Livefraction per bunch crossing ID.
virtual StreamNameFcn * getNewStreamNameFcn() const
virtual StatusCode checkHists(bool calledFromFinalize)
This implementation does nothing; equivalent functionality may be provided by procHists(....
virtual StreamNameFcn * streamNameFunction()
Returns the function object that converts logical paramters into a physical stream name.
void updateTriggersForGroups(std::vector< std::string > &)
AthenaMonManager::DataType_t m_dataType
virtual float lbAverageInteractionsPerCrossing(const EventContext &ctx) const
Average mu, i.e.
virtual StatusCode runStat()
This implementation does nothing; equivalent functionality may be provided by procHists( true,...
virtual StatusCode regEfficiency(TEfficiency *e, const MonGroup &group)
Registers a TEfficiency to be included in the output stream using logical parameters that describe th...
std::map< Interval_t, std::vector< MgmtParams< TEfficiency > > > m_templateEfficiencies
virtual StatusCode procHistograms()
An inheriting class should either override this function or finalHists().
StatusCode regManagedHistograms(std::vector< MgmtParams< TH1 > > &templateHistograms)
virtual bool trigChainsArePassed(std::vector< std::string > &)
Basic interface for the TrigDecisionTool.
The common trigger namespace for trigger analysis tools.
Definition merge.py:1