ATLAS Offline Software
JetPileupLabelingTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef PARTICLEJETTOOLS_JETPILEUPLABELINGTOOL_H
6 #define PARTICLEJETTOOLS_JETPILEUPLABELINGTOOL_H
7 
8 #include "AsgTools/AsgTool.h"
13 
14 #include "xAODJet/JetContainer.h"
18 
19 
21  public asg::AsgTool,
22  virtual public IJetDecorator
23 {
25 
26 public:
27 
28  // Apparently this defines a constructor
30 
31  virtual StatusCode initialize() override;
32 
34  StatusCode decorate(const xAOD::JetContainer& jets) const override;
35 
37  void print() const override;
38 
39 private:
40 
41  Gaudi::Property<std::string> m_jetContainerName{this, "RecoJetContainer", "AntiKt4EMPFlowJets", "Input reco jet container name"};
42 
43  Gaudi::Property<bool> m_suppressOutputDeps{this, "SuppressOutputDependence", false, "Ignore creating the output decoration dependency for data flow; for analysis"};
44 
45  Gaudi::Property<float> m_hsMaxDR{this, "isHSMaxDR", 0.3, "Tag a reco jet as HS if it is at most this distance from a truth jet"};
46  Gaudi::Property<float> m_hsMinPt{this, "isHSMinPt", 10e3, "Only consider truth jets above this pT for HS tagging"};
47  Gaudi::Property<float> m_puMinDR{this, "isPUMinDR", 0.6, "Tag a reco jet as PU if it is at least this distance from any truth jet"};
48  Gaudi::Property<float> m_puMinPt{this, "isPUMinPt", 0, "Only consider truth jets above this pT to veto jets for being PU tagged"};
49 
50  SG::ReadHandleKey<xAOD::JetContainer> m_truthJetsKey{this, "TruthJetContainer", "AntiKt4TruthDressedWZJets", "SG key for input Truth HS jets"};
51 
52  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decIsHSKey{this, "isHSLabel", "isJvtHS", "SG key for label of HS jets"};
53  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decIsPUKey{this, "isPULabel", "isJvtPU", "SG key for label of PU jets"};
54 
55 };
56 
57 #endif
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition: StoreGate/StoreGate/WriteDecorHandleKey.h:89
JetPileupLabelingTool::decorate
StatusCode decorate(const xAOD::JetContainer &jets) const override
Decorate hard-scatter and pileup labels to a jet collection.
Definition: JetPileupLabelingTool.cxx:43
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
PropertyWrapper.h
JetPileupLabelingTool::m_suppressOutputDeps
Gaudi::Property< bool > m_suppressOutputDeps
Definition: JetPileupLabelingTool.h:43
JetPileupLabelingTool::m_decIsHSKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decIsHSKey
Definition: JetPileupLabelingTool.h:52
TruthParticleContainer.h
IJetDecorator
Interface for adding a decoration to a jet container.
Definition: IJetDecorator.h:21
JetPileupLabelingTool::print
void print() const override
Print configured parameters.
Definition: JetPileupLabelingTool.cxx:34
JetPileupLabelingTool::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition: JetPileupLabelingTool.cxx:12
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
IJetDecorator.h
JetPileupLabelingTool::m_puMinDR
Gaudi::Property< float > m_puMinDR
Definition: JetPileupLabelingTool.h:47
JetPileupLabelingTool::m_hsMaxDR
Gaudi::Property< float > m_hsMaxDR
Definition: JetPileupLabelingTool.h:45
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
asg::AsgTool::AsgTool
AsgTool(const std::string &name)
Constructor specifying the tool instance's name.
Definition: AsgTool.cxx:58
CheckAppliedSFs.e3
e3
Definition: CheckAppliedSFs.py:264
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.
JetPileupLabelingTool::m_puMinPt
Gaudi::Property< float > m_puMinPt
Definition: JetPileupLabelingTool.h:48
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
JetPileupLabelingTool::m_truthJetsKey
SG::ReadHandleKey< xAOD::JetContainer > m_truthJetsKey
Definition: JetPileupLabelingTool.h:50
EventInfo.h
WriteDecorHandleKey.h
JetContainer.h
JetPileupLabelingTool
Definition: JetPileupLabelingTool.h:23
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
JetPileupLabelingTool::m_jetContainerName
Gaudi::Property< std::string > m_jetContainerName
Definition: JetPileupLabelingTool.h:41
defineDB.jets
list jets
Definition: JetTagCalibration/share/defineDB.py:24
AsgTool.h
JetPileupLabelingTool::m_hsMinPt
Gaudi::Property< float > m_hsMinPt
Definition: JetPileupLabelingTool.h:46
JetPileupLabelingTool::m_decIsPUKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decIsPUKey
Definition: JetPileupLabelingTool.h:53