ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigHypothesis
TrigHLTJetHypo
src
TrigJetEJsHypoTool.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 TRIGJETEJSHYPOTOOL_H
6
#define TRIGJETEJSHYPOTOOL_H
7
/********************************************************************
8
*
9
* NAME: TrigJetEJsHypoTool.h
10
* PACKAGE: Trigger/TrigHypothesis/TrigHLTJetHypo
11
*
12
* * @class TrigJetEJsHypoTool
13
* * @brief HypoTool for
14
* * @details HypoTool needed to decide on exotic jet selections
15
* * @author Aaron Kilgallon
16
* * @author Antonio Boveia
17
* * @author Caterina Doglioni
18
* * @author Teng Jian Khoo
19
* * @author Tim Martin
20
* * @author Rafal Bielski
21
*
22
*
23
********************************************************************/
24
25
#include "
TrigCompositeUtils/HLTIdentifier.h
"
26
#include "
AthenaBaseComps/AthAlgTool.h
"
27
#include "
TrigCompositeUtils/TrigCompositeUtils.h
"
28
#include "
AthenaMonitoringKernel/GenericMonitoringTool.h
"
29
30
#include "
TrigHLTJetHypo/ITrigJetHypoToolHelper.h
"
31
32
#include "
xAODEventInfo/EventInfo.h
"
33
#include "
xAODJet/JetContainer.h
"
34
#include "
xAODTracking/TrackParticlexAODHelpers.h
"
35
#include "
xAODTracking/TrackParticleContainer.h
"
36
#include "
xAODTracking/VertexContainer.h
"
37
38
39
class
TrigJetEJsHypoTool
:
public
AthAlgTool
{
40
41
public
:
42
43
TrigJetEJsHypoTool
(
const
std::string&
type
,
44
const
std::string& name,
45
const
IInterface* parent);
46
47
~TrigJetEJsHypoTool
();
48
StatusCode
initialize
();
49
StatusCode
finalize
();
50
51
// typedef for passing jet - decision object assocation
52
using
JetDecision
= std::pair<const xAOD::Jet*,TrigCompositeUtils::Decision*>;
53
54
struct
JetInfo
{
55
TrigCompositeUtils::Decision
*
decision
=
nullptr
;
56
const
xAOD::Jet_v1
*
jet
=
nullptr
;
57
const
xAOD::TrackParticleContainer
*
AllTracks
=
nullptr
;
58
const
xAOD::Vertex_v1
*
PV
=
nullptr
;
59
const
TrigCompositeUtils::DecisionIDContainer
previousDecisionsIDs
;
60
};
61
62
StatusCode
decide
( std::vector<JetInfo>& decisions )
const
;
63
64
const
HLT::Identifier
&
getId
()
const
;
65
66
private
:
67
68
// Identifier is used to keep track of which tool made which decision.
69
// The information is stored in the event store.
70
HLT::Identifier
m_decisionId
;
71
72
ToolHandle<ITrigJetHypoToolHelper>
m_helper
{
73
this
,
"helper_tool"
, {},
"Jet hypo helper AlgTool"
};
74
75
Gaudi::Property<bool>
76
m_visitDebug
{
this
,
"visit_debug"
,
false
,
"debug flag"
};
77
78
Gaudi::Property<std::string>
m_chainName
{
79
this
,
"chain_name"
, {},
"chain name"
};
80
81
Gaudi::Property< double >
m_ptf
{
this
,
"PTF"
, 1.0,
""
};
82
Gaudi::Property< double >
m_dr
{
this
,
"dR"
, 1.0,
""
};
83
Gaudi::Property< int >
m_trackless
{
this
,
"Trackless"
, 1.0,
""
};
84
85
// Track eta cuts for exotics and trackless hypos
86
double
m_trackEtaCut_Exotics
= 2.4;
87
double
m_trackEtaCut_Trackless
= 2.4;
88
// Track pT cuts for exotics hypos
89
double
m_trackPtCut_Exotics
= 1.0*Gaudi::Units::GeV;
90
double
m_trackPtCut_Trackless
= 2.0*Gaudi::Units::GeV;
91
// Jet pT cut for promptTrackFrac definition (studies only
92
// done down to a 50 GeV cut)
93
double
m_jetPtCut_Exotics
= 50.0*Gaudi::Units::GeV;
94
double
m_jetPtCut_Trackless
= 50.0*Gaudi::Units::GeV;
95
// Eta cut for exotics jet selections (may need to be reduced
96
// to 1.4 for large-R jets to have complete overlapy with
97
// the tracker)
98
double
m_jetEtaCut_Exotics
= 2.0;
99
double
m_jetEtaCut_Trackless
= 2.0;
100
// Track d0 cuts based on a multiple of background distribution
101
// 2.5 was found to be best signal sensitivity for R-Hadrons
102
double
m_PTFSigmaCut
= 2.5;
103
// Cut on number of tracks associated to jet in the soft-bomb
104
// trigger case (likely to be changed based on physics studies)
105
int
m_matchedTracksCut_Trackless
= 0;
106
// |z0 - PV_z| cut on tracks
107
double
m_PV_z
= 10.0;
108
109
};
110
#endif
AthAlgTool.h
TrackParticleContainer.h
GenericMonitoringTool.h
ITrigJetHypoToolHelper.h
JetContainer.h
TrackParticlexAODHelpers.h
HLTIdentifier.h
TrigCompositeUtils.h
VertexContainer.h
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
HLT::Identifier
Definition
TrigCompositeUtils/TrigCompositeUtils/HLTIdentifier.h:19
TrigJetEJsHypoTool::m_dr
Gaudi::Property< double > m_dr
Definition
TrigJetEJsHypoTool.h:82
TrigJetEJsHypoTool::m_trackEtaCut_Exotics
double m_trackEtaCut_Exotics
Definition
TrigJetEJsHypoTool.h:86
TrigJetEJsHypoTool::m_jetEtaCut_Exotics
double m_jetEtaCut_Exotics
Definition
TrigJetEJsHypoTool.h:98
TrigJetEJsHypoTool::m_jetPtCut_Exotics
double m_jetPtCut_Exotics
Definition
TrigJetEJsHypoTool.h:93
TrigJetEJsHypoTool::m_decisionId
HLT::Identifier m_decisionId
Definition
TrigJetEJsHypoTool.h:70
TrigJetEJsHypoTool::finalize
StatusCode finalize()
Definition
TrigJetEJsHypoTool.cxx:61
TrigJetEJsHypoTool::JetDecision
std::pair< const xAOD::Jet *, TrigCompositeUtils::Decision * > JetDecision
Definition
TrigJetEJsHypoTool.h:52
TrigJetEJsHypoTool::~TrigJetEJsHypoTool
~TrigJetEJsHypoTool()
Definition
TrigJetEJsHypoTool.cxx:42
TrigJetEJsHypoTool::m_PV_z
double m_PV_z
Definition
TrigJetEJsHypoTool.h:107
TrigJetEJsHypoTool::m_jetEtaCut_Trackless
double m_jetEtaCut_Trackless
Definition
TrigJetEJsHypoTool.h:99
TrigJetEJsHypoTool::initialize
StatusCode initialize()
Definition
TrigJetEJsHypoTool.cxx:45
TrigJetEJsHypoTool::getId
const HLT::Identifier & getId() const
TrigJetEJsHypoTool::m_matchedTracksCut_Trackless
int m_matchedTracksCut_Trackless
Definition
TrigJetEJsHypoTool.h:105
TrigJetEJsHypoTool::m_ptf
Gaudi::Property< double > m_ptf
Definition
TrigJetEJsHypoTool.h:81
TrigJetEJsHypoTool::m_chainName
Gaudi::Property< std::string > m_chainName
Definition
TrigJetEJsHypoTool.h:78
TrigJetEJsHypoTool::m_PTFSigmaCut
double m_PTFSigmaCut
Definition
TrigJetEJsHypoTool.h:102
TrigJetEJsHypoTool::m_trackless
Gaudi::Property< int > m_trackless
Definition
TrigJetEJsHypoTool.h:83
TrigJetEJsHypoTool::decide
StatusCode decide(std::vector< JetInfo > &decisions) const
Definition
TrigJetEJsHypoTool.cxx:66
TrigJetEJsHypoTool::TrigJetEJsHypoTool
TrigJetEJsHypoTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition
TrigJetEJsHypoTool.cxx:33
TrigJetEJsHypoTool::m_jetPtCut_Trackless
double m_jetPtCut_Trackless
Definition
TrigJetEJsHypoTool.h:94
TrigJetEJsHypoTool::m_trackPtCut_Exotics
double m_trackPtCut_Exotics
Definition
TrigJetEJsHypoTool.h:89
TrigJetEJsHypoTool::m_helper
ToolHandle< ITrigJetHypoToolHelper > m_helper
Definition
TrigJetEJsHypoTool.h:72
TrigJetEJsHypoTool::m_trackPtCut_Trackless
double m_trackPtCut_Trackless
Definition
TrigJetEJsHypoTool.h:90
TrigJetEJsHypoTool::m_visitDebug
Gaudi::Property< bool > m_visitDebug
Definition
TrigJetEJsHypoTool.h:76
TrigJetEJsHypoTool::m_trackEtaCut_Trackless
double m_trackEtaCut_Trackless
Definition
TrigJetEJsHypoTool.h:87
xAOD::Jet_v1
Class describing a jet.
Definition
Jet_v1.h:57
xAOD::Vertex_v1
Class describing a Vertex.
Definition
Vertex_v1.h:42
TrigCompositeUtils::Decision
xAOD::TrigComposite Decision
Definition
TrigComposite.h:20
TrigCompositeUtils::DecisionIDContainer
std::set< DecisionID > DecisionIDContainer
Definition
TrigComposite_v1.h:28
jet
Definition
JetCalibTools_PlotJESFactors.cxx:23
xAOD::TrackParticleContainer
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticleContainer.h:14
type
TrigJetEJsHypoTool::JetInfo
Definition
TrigJetEJsHypoTool.h:54
TrigJetEJsHypoTool::JetInfo::PV
const xAOD::Vertex_v1 * PV
Definition
TrigJetEJsHypoTool.h:58
TrigJetEJsHypoTool::JetInfo::AllTracks
const xAOD::TrackParticleContainer * AllTracks
Definition
TrigJetEJsHypoTool.h:57
TrigJetEJsHypoTool::JetInfo::previousDecisionsIDs
const TrigCompositeUtils::DecisionIDContainer previousDecisionsIDs
Definition
TrigJetEJsHypoTool.h:59
TrigJetEJsHypoTool::JetInfo::decision
TrigCompositeUtils::Decision * decision
Definition
TrigJetEJsHypoTool.h:55
EventInfo.h
Generated on
for ATLAS Offline Software by
1.17.0