ATLAS Offline Software
PileupReweightingAlg.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__PILEUP_REWEIGHTING_ALG_H
9 #define ASG_ANALYSIS_ALGORITHMS__PILEUP_REWEIGHTING_ALG_H
10 
22 
23 namespace CP
24 {
26 
28  {
30  public:
32  StatusCode initialize () override;
33  StatusCode execute () override;
34 
35 
36 
38  private:
39  ToolHandle<IPileupReweightingTool> m_pileupReweightingTool {this, "pileupReweightingTool", "PileupReweightingTool", "the pileup reweighting tool we apply"};
40 
42  private:
44 
46  private:
48  this, "pileupWeightDecoration", "PileupWeight_%SYS%", "the decoration for the pileup weight"};
49 
51  private:
53  this, "eventInfo", "EventInfo", "the input EventInfo object"};
54 
56  private:
57  SG::ReadHandleKey<xAOD::EventInfo> m_baseEventInfoName {this, "baseEventInfo", "EventInfo", "The name of the original event info. The non-systematic dependent decorations will be applied to this "
58  "object so it should be at least a base of the shallow copies read in by the 'eventInfo' handle. "
59  "The default (and strongly recommended behaviour) is to leave all of these pointed at the central 'EventInfo' object!"};
60 
62  private:
64  { this, "correctedScaledAverageMuDecoration", m_baseEventInfoName, "",
65  "the decoration for the corrected and scaled average interactions per crossing" };
66 
68  private:
70  { this, "correctedActualMuDecoration", m_baseEventInfoName, "",
71  "the decoration for the corrected actual interactions per crossing" };
72 
74  private:
76  { this, "correctedScaledActualMuDecoration", m_baseEventInfoName, "",
77  "the decoration for the corrected and scaled actual interactions per crossing" };
78 
80  private:
82 
84  { this, "RandomRunNumberKey", m_baseEventInfoName, "RandomRunNumber",
85  "Name for the RandomRunNumber decoration" };
86 
88  { this, "RandomLumiBlockNumberKey", m_baseEventInfoName, "RandomLumiBlockNumber",
89  "Name for the RandomLumiBlockNumber decoration" }; // unsigned int
90 
92  { this, "PRWHashKey", m_baseEventInfoName, "PRWHash",
93  "Name for the PRWHash decoration" }; // uint64_t
94  };
95 }
96 
97 #endif
SG::WriteDecorHandleKey< xAOD::EventInfo >
OutOfValidityHelper.h
CP::PileupReweightingAlg::m_pileupReweightingTool
ToolHandle< IPileupReweightingTool > m_pileupReweightingTool
the smearing tool
Definition: PileupReweightingAlg.h:39
PropertyWrapper.h
CP::SysListHandle
a class managing the property to configure the list of systematics to process
Definition: SysListHandle.h:33
SysWriteDecorHandle.h
CP::OutOfValidityHelper
a helper to translate a CP::CorrectionCode into a ::StatusCode
Definition: OutOfValidityHelper.h:73
SysListHandle.h
CP::PileupReweightingAlg::m_baseEventInfoName
SG::ReadHandleKey< xAOD::EventInfo > m_baseEventInfoName
the name of the original event info (this should usually be the same as eventiNfoHandle and EventInfo...
Definition: PileupReweightingAlg.h:57
SG::ReadHandleKey< xAOD::EventInfo >
CP::SysReadHandle
a data handle for reading systematics varied input data
Definition: SysReadHandle.h:32
CP::PileupReweightingAlg::initialize
StatusCode initialize() override
Definition: PileupReweightingAlg.cxx:29
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
EL::AnaAlgorithm::AnaAlgorithm
AnaAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
Definition: AnaAlgorithm.cxx:40
CP::PileupReweightingAlg::m_decHashKey
SG::WriteDecorHandleKey< xAOD::EventInfo > m_decHashKey
Definition: PileupReweightingAlg.h:92
SysReadHandle.h
AnaAlgorithm.h
CP::PileupReweightingAlg::execute
StatusCode execute() override
Definition: PileupReweightingAlg.cxx:51
EL::AnaAlgorithm
the (new) base class for EventLoop algorithms
Definition: AnaAlgorithm.h:73
IPileupReweightingTool.h
CP::PileupReweightingAlg
an algorithm for calling IPileupReweightingTool
Definition: PileupReweightingAlg.h:28
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
CP::PileupReweightingAlg::m_eventInfoHandle
CP::SysReadHandle< xAOD::EventInfo > m_eventInfoHandle
the name of the event info object
Definition: PileupReweightingAlg.h:52
CP::PileupReweightingAlg::m_weightDecorator
CP::SysWriteDecorHandle< float > m_weightDecorator
the decoration for the pileup weight
Definition: PileupReweightingAlg.h:47
ReadHandle.h
Handle class for reading from StoreGate.
CP::PileupReweightingAlg::m_outOfValidity
OutOfValidityHelper m_outOfValidity
the helper for OutOfValidity results
Definition: PileupReweightingAlg.h:81
CP::PileupReweightingAlg::m_correctedActualMuDecorator
SG::WriteDecorHandleKey< xAOD::EventInfo > m_correctedActualMuDecorator
the decoration for the corrected actual interactions per crossing
Definition: PileupReweightingAlg.h:70
EventInfo.h
WriteDecorHandleKey.h
CP::PileupReweightingAlg::m_systematicsList
SysListHandle m_systematicsList
the systematics list we run
Definition: PileupReweightingAlg.h:43
CP::PileupReweightingAlg::m_decRRNKey
SG::WriteDecorHandleKey< xAOD::EventInfo > m_decRRNKey
Definition: PileupReweightingAlg.h:84
CP::SysWriteDecorHandle< float >
CP::PileupReweightingAlg::m_decRLBNKey
SG::WriteDecorHandleKey< xAOD::EventInfo > m_decRLBNKey
Definition: PileupReweightingAlg.h:88
CP::PileupReweightingAlg::m_correctedScaledAverageMuDecorator
SG::WriteDecorHandleKey< xAOD::EventInfo > m_correctedScaledAverageMuDecorator
the decoration for the corrected and scaled average interactions per crossing
Definition: PileupReweightingAlg.h:64
CP::PileupReweightingAlg::m_correctedScaledActualMuDecorator
SG::WriteDecorHandleKey< xAOD::EventInfo > m_correctedScaledActualMuDecorator
the decoration for the corrected and scaled actual interactions per crossing
Definition: PileupReweightingAlg.h:76