ATLAS Offline Software
Trigger
TrigAlgorithms
TrigEFMissingET
src
ExtendTrackToLayerTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRIGEFMISSINGET_EXTENDTRACKTOLAYERTOOL_H
6
#define TRIGEFMISSINGET_EXTENDTRACKTOLAYERTOOL_H
7
8
#include "
TrigEFMissingET/IExtendTrackToLayerTool.h
"
9
#include "
AsgTools/AsgTool.h
"
10
#include "
AsgTools/ToolHandle.h
"
11
#include "
RecoToolInterfaces/IParticleCaloExtensionTool.h
"
12
#include "CaloGeoHelpers/CaloSampling.h"
13
20
class
ExtendTrackToLayerTool
:
public
virtual
IExtendTrackToLayerTool
,
public
asg::AsgTool
21
{
22
public
:
23
ASG_TOOL_CLASS
(
ExtendTrackToLayerTool
,
IExtendTrackToLayerTool
);
24
25
ExtendTrackToLayerTool
(
const
std::string &
name
);
26
27
virtual
StatusCode
initialize
()
override
;
28
29
virtual
TrackExtension
extendTrack
(
30
const
EventContext& ctx,
31
const
xAOD::TrackParticle
&
track
)
const override
;
32
private
:
33
ToolHandle<Trk::IParticleCaloExtensionTool>
m_extensionTool
{
34
this
,
"ExtensionTool"
,
""
,
"The track extension tool"
};
35
Gaudi::Property<std::vector<std::string>>
m_caloLayerNames
{
36
this
,
"CaloLayerNames"
, {
"EMB2"
,
"EME2"
},
"The (ordered) names of layers to which to extend."
};
37
38
// Internals
40
std::vector<CaloSampling::CaloSample>
m_caloLayers
;
41
};
//> end class ExtendTrackToLayerTool
42
43
#endif //> !TRIGEFMISSINGET_EXTENDTRACKTOLAYERTOOL_H
IExtendTrackToLayerTool
Definition:
IExtendTrackToLayerTool.h:14
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition:
AsgTool.h:47
IExtendTrackToLayerTool.h
ExtendTrackToLayerTool::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition:
ExtendTrackToLayerTool.cxx:12
ExtendTrackToLayerTool::ExtendTrackToLayerTool
ExtendTrackToLayerTool(const std::string &name)
Definition:
ExtendTrackToLayerTool.cxx:8
IExtendTrackToLayerTool::TrackExtension
Helper struct to hold track extrapolation information.
Definition:
IExtendTrackToLayerTool.h:27
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ExtendTrackToLayerTool::extendTrack
virtual TrackExtension extendTrack(const EventContext &ctx, const xAOD::TrackParticle &track) const override
Extend the track to a given layer.
Definition:
ExtendTrackToLayerTool.cxx:39
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:228
IParticleCaloExtensionTool.h
ExtendTrackToLayerTool::m_extensionTool
ToolHandle< Trk::IParticleCaloExtensionTool > m_extensionTool
Definition:
ExtendTrackToLayerTool.h:33
ExtendTrackToLayerTool::m_caloLayerNames
Gaudi::Property< std::vector< std::string > > m_caloLayerNames
Definition:
ExtendTrackToLayerTool.h:35
xAOD::track
@ track
Definition:
TrackingPrimitives.h:512
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition:
TrackParticle_v1.h:43
ToolHandle.h
AsgTool.h
ExtendTrackToLayerTool
Extrapolate tracks using the calo extension tool.
Definition:
ExtendTrackToLayerTool.h:21
ExtendTrackToLayerTool::ASG_TOOL_CLASS
ASG_TOOL_CLASS(ExtendTrackToLayerTool, IExtendTrackToLayerTool)
ExtendTrackToLayerTool::m_caloLayers
std::vector< CaloSampling::CaloSample > m_caloLayers
The calo layer enums.
Definition:
ExtendTrackToLayerTool.h:40
Generated on Sun Dec 22 2024 21:10:23 for ATLAS Offline Software by
1.8.18