18#ifndef TrigEgammaFastElectronReAlgo_H
19#define TrigEgammaFastElectronReAlgo_H
23#include "GaudiKernel/ToolHandle.h"
24#include "GaudiKernel/SystemOfUnits.h"
56 virtual StatusCode
execute(
const EventContext& ctx)
const override;
64 if(!el)
return -999.0;
69 if(!el)
return -999.0;
70 return (el->trackParticle() ? el->trackParticle()->pt() : -999);
77 double &,
double &)
const;
80 Gaudi::Property<bool>
m_acceptAll {
this,
"AcceptAll",
false,
"Build electrons for all tracks"};
81 Gaudi::Property<float>
m_clusEtthr {
this,
"ClusEt", 20.0*Gaudi::Units::GeV ,
" lower limit on cluster Et"};
82 Gaudi::Property<float>
m_trackPtthr {
this,
"TrackPt", 5.0*Gaudi::Units::GeV ,
"lower limit on TrackPt cut" };
83 Gaudi::Property<float>
m_calotrkdeta_noextrap {
this,
"CaloTrackdEtaNoExtrap", 0.5,
"Upper limit on DEta between Calo cluster and Track for track preselection before extrapolation"};
84 Gaudi::Property<float>
m_trackPtthr_highet {
this,
"TrackPtHighEt", 2.0*Gaudi::Units::GeV ,
"lower limit on TrackPt cut High Et Cluster (20GeV)"};
85 Gaudi::Property<float>
m_calotrkdeta_noextrap_highet {
this,
"CaloTrackdEtaNoExtrapHighEt", 0,
"upper limit on DEta between Calo cluster and Track for track preselection before extrapolation for High Et cluster (20GeV)"};
86 Gaudi::Property<float>
m_calotrackdeta {
this,
"CaloTrackdETA", 0,
"Upper limit on DEta between Calo cluster and Track"};
87 Gaudi::Property<float>
m_calotrackdphi {
this,
"CaloTrackdPHI", 0,
"Upper limit on DPhi between Calo cluster and Track"};
89 Gaudi::Property<float>
m_calotrackdeoverp_high {
this,
"CaloTrackdEoverPHigh", 0,
"upper limit on track E(calo)/p(track)"};
90 Gaudi::Property<float>
m_RCAL {
this,
"RCalBarrelFace", 1470.0*Gaudi::Units::mm ,
"Radius of inner face of the barrel calorimeter"};
91 Gaudi::Property<float>
m_ZCAL {
this,
"ZCalEndcapFace", 3800.0*Gaudi::Units::mm,
"z of the inner face of endcap calorimeter"};
95 this,
"ParticleCaloExtensionTool",
96 "Trk::ParticleCaloExtensionTool/ParticleCaloExtensionTool",
97 "Tool to extrapolate Track to Calo inner surface"};
102 "input RoI Collection name"};
107 "input TrigEMCluster Container name"};
110 "TrackParticlesName",
112 "input TrackParticle container name"};
116 "CaloDetDescrManager",
117 "CaloDetDescrManager",
118 "SG Key for CaloDetDescrManager in the Condition Store"};
124 "output Electron container name "};
127 "DummyElectronsName",
129 "output Dummy Electron container name "};
131 ToolHandle< GenericMonitoringTool >
m_monTool {
this,
"MonTool",
"",
"Monitoring tool" };
Definition of CaloDetDescrManager.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
This class provides the client interface for accessing the detector description information common to...
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
Gaudi::Property< float > m_ZCAL
Gaudi::Property< float > m_calotrackdeoverp_high
SG::WriteHandleKey< xAOD::TrigElectronContainer > m_outputElectronsKey
static double getCaloPt(const xAOD::TrigElectron *el)
Gaudi::Property< float > m_RCAL
Gaudi::Property< float > m_calotrkdeta_noextrap_highet
Gaudi::Property< bool > m_acceptAll
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloDetDescrMgrKey
Gaudi::Property< float > m_trackPtthr_highet
SG::ReadHandleKey< xAOD::TrigEMClusterContainer > m_TrigEMClusterContainerKey
bool extrapolate(const EventContext &ctx, const CaloDetDescrManager &caloDD, const xAOD::TrigEMCluster *, const xAOD::TrackParticle *, double &, double &) const
Gaudi::Property< float > m_calotrkdeta_noextrap
TrigEgammaFastElectronReAlgo(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_TrackParticleContainerKey
static double getTkPt(const xAOD::TrigElectron *el)
Gaudi::Property< float > m_calotrackdeoverp_low
virtual StatusCode initialize() override
virtual StatusCode execute(const EventContext &ctx) const override
SG::ReadHandleKey< TrigRoiDescriptorCollection > m_roiCollectionKey
Gaudi::Property< float > m_trackPtthr
Gaudi::Property< float > m_calotrackdeta
SG::WriteHandleKey< xAOD::TrigElectronContainer > m_outputDummyElectronsKey
ToolHandle< GenericMonitoringTool > m_monTool
Gaudi::Property< float > m_calotrackdphi
Gaudi::Property< float > m_clusEtthr
ToolHandle< Trk::IParticleCaloExtensionTool > m_caloExtensionTool
TrackParticle_v1 TrackParticle
Reference the current persistent version:
TrigElectron_v1 TrigElectron
Declare the latest version of the class.
TrigEMCluster_v1 TrigEMCluster
Define the latest version of the trigger EM cluster class.