ATLAS Offline Software
Loading...
Searching...
No Matches
AsgCutBookkeeperAlg.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__ASG_CUT_BOOKKEEPER_ALG_H
9#define ASG_ANALYSIS_ALGORITHMS__ASG_CUT_BOOKKEEPER_ALG_H
10
18
19namespace CP
20{
23
25 {
27 public:
29
30 public:
32 StatusCode initialize () override;
33
34 public:
36 StatusCode fileExecute () override;
37
38 public:
40 StatusCode finalize () override;
41
42 private:
45 size_t index);
46
48 private:
49 Gaudi::Property<bool> m_enableSystematics {this, "enableSystematics", false, "enable systematics"};
50
52 private:
53 ToolHandle<PMGTools::IPMGTruthWeightTool> m_truthWeightTool {this, "truthWeightTool", "PMGTools::PMGTruthWeightTool", "the truth weight tool"};
54
56 private:
57 ServiceHandle<ISystematicsSvc> m_systematics {this, "systematics", "SystematicsSvc", "systematics service"};
58
60 private:
61 Gaudi::Property<uint32_t> m_runNumber {this, "runNumber", 0, "the run number we are processing"};
62
64 private:
66
68 private:
70 {
72 float sumOfWeights {};
74 };
75
77 private:
78 std::vector<std::string> m_allowed_streams{"StreamAOD", "StreamEVGEN", "StreamEVNT"};
79
81 private:
82 std::unordered_map<size_t, WeightsGroup> m_weights;
83
85 private:
86 Gaudi::Property<std::string> m_histPattern {this, "histPattern", "CutBookkeeper_%DSID%_%RUN%_%SYS%", "the pattern for histogram names"};
87 };
88}
89
90#endif
an algorithm for dumping the CutBookkeeper metadata into a histogram
ServiceHandle< ISystematicsSvc > m_systematics
the systematics service
Gaudi::Property< uint32_t > m_runNumber
run number we are processing
StatusCode initialize() override
initialize
uint32_t m_mcChannelNumber
MC channel number we are processing.
Gaudi::Property< bool > m_enableSystematics
flag to enable systematics
Gaudi::Property< std::string > m_histPattern
the pattern for histogram names
ToolHandle< PMGTools::IPMGTruthWeightTool > m_truthWeightTool
the truth weight tool
std::vector< std::string > m_allowed_streams
input streams that we can run the CutBookkeepers against
void processCutBookkeeper(const xAOD::CutBookkeeper *cbk, size_t index)
process a CutBookkeeper
StatusCode fileExecute() override
run once on each file
StatusCode finalize() override
finalize
std::unordered_map< size_t, WeightsGroup > m_weights
weights map
the (new) base class for EventLoop algorithms
AnaAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
Select isolated Photons, Electrons and Muons.
Definition index.py:1
CutBookkeeper_v1 CutBookkeeper
Define the latest version of the CutBookkeeper class.
setEventNumber uint32_t