ATLAS Offline Software
Loading...
Searching...
No Matches
EventCutFlowHistAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8#ifndef ASG_ANALYSIS_ALGORITHMS__EVENT_CUT_FLOW_HIST_ALG_H
9#define ASG_ANALYSIS_ALGORITHMS__EVENT_CUT_FLOW_HIST_ALG_H
10
19
20namespace CP
21{
23
25 {
27 public:
29 StatusCode initialize () override;
30 StatusCode execute () override;
31
32
34 private:
36
38 private:
40 this, "eventInfo", "EventInfo", "the EventInfo container to run on"};
41
43 private:
45 this, "preselection", "", "the preselection to apply"};
46
48 private:
49 Gaudi::Property<std::string> m_histPattern {this, "histPattern", "cutflow_%SYS%", "the pattern for histogram names"};
50
52 private:
53 ServiceHandle<ISelectionNameSvc> m_selectionNameSvc {"SelectionNameSvc", "EventCutFlowHistAlg"};
54
56 private:
57 Gaudi::Property<std::string> m_histTitle {this, "histTitle", "event cut flow", "title for the created histograms"};
58
60 private:
62 this, "selections", {}, "the inputs to the event cutflow"};
63
66 private:
67 unsigned m_allCutsNum = 0;
68
70 private:
71 std::unordered_map<CP::SystematicSet,TH1*> m_hist;
72
74 private:
75 std::vector<std::string> m_labels;
76 };
77}
78
79#endif
an algorithm for dumping the an event-level cutflow
std::vector< std::string > m_labels
histogram bin labels
SysListHandle m_systematicsList
the systematics list we run
StatusCode execute() override
Gaudi::Property< std::string > m_histTitle
the histogram title to use
StatusCode initialize() override
SysReadSelectionHandleArray m_selections
the input object selections for which to create a cutflow
std::unordered_map< CP::SystematicSet, TH1 * > m_hist
the created histograms
SysReadHandle< xAOD::EventInfo > m_eventInfoHandle
the jet collection we run on
SysReadSelectionHandle m_preselection
the preselection we apply to our input
Gaudi::Property< std::string > m_histPattern
the pattern for histogram names
ServiceHandle< ISelectionNameSvc > m_selectionNameSvc
the selection name service
unsigned m_allCutsNum
the total number of cuts configured (needed to configure histograms)
a class managing the property to configure the list of systematics to process
a data handle for reading systematics varied input data
a data handle for reading systematically varied selection properties from objects
the (new) base class for EventLoop algorithms
AnaAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
Select isolated Photons, Electrons and Muons.
SysHandleArray< SysReadSelectionHandle > SysReadSelectionHandleArray