|
ATLAS Offline Software
|
TrigEgammaFastElectronReAlgo is a Trigger Fex Algorithm that retrieves the TrigEMCluster container and the TrackCollection containers and then creates a TrigElectron Container with a subset of calorimeter-ID selection variables that are calculated (eg. E/p) The algo will apply some very loose selection cuts to the TrigElectronContainer created which is of TrigParticle type TrigElectron The TrigElectron conatiner will then be retrieved by the hypothesis algorithm TrigEgammaFastElectronHypo that will perform the corresponding fast electron selection.
More...
#include <TrigEgammaFastElectronReAlgo.h>
|
| TrigEgammaFastElectronReAlgo (const std::string &name, ISvcLocator *pSvcLocator) |
|
virtual StatusCode | initialize () override |
|
virtual StatusCode | execute (const EventContext &ctx) const override |
|
virtual StatusCode | sysInitialize () override |
| Override sysInitialize. More...
|
|
virtual bool | isClonable () const override |
| Specify if the algorithm is clonable. More...
|
|
virtual unsigned int | cardinality () const override |
| Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant. More...
|
|
virtual StatusCode | sysExecute (const EventContext &ctx) override |
| Execute an algorithm. More...
|
|
virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. More...
|
|
virtual bool | filterPassed (const EventContext &ctx) const |
|
virtual void | setFilterPassed (bool state, const EventContext &ctx) const |
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
Gaudi::Property< bool > | m_acceptAll {this, "AcceptAll", false, "Build electrons for all tracks"} |
|
Gaudi::Property< float > | m_clusEtthr {this, "ClusEt", 20.0*Gaudi::Units::GeV , " lower limit on cluster Et"} |
|
Gaudi::Property< float > | m_trackPtthr {this, "TrackPt", 5.0*Gaudi::Units::GeV , "lower limit on TrackPt cut" } |
|
Gaudi::Property< float > | m_calotrkdeta_noextrap {this, "CaloTrackdEtaNoExtrap", 0.5, "Upper limit on DEta between Calo cluster and Track for track preselection before extrapolation"} |
|
Gaudi::Property< float > | m_trackPtthr_highet {this, "TrackPtHighEt", 2.0*Gaudi::Units::GeV , "lower limit on TrackPt cut High Et Cluster (20GeV)"} |
|
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)"} |
|
Gaudi::Property< float > | m_calotrackdeta {this, "CaloTrackdETA", 0, "Upper limit on DEta between Calo cluster and Track"} |
|
Gaudi::Property< float > | m_calotrackdphi {this, "CaloTrackdPHI", 0, "Upper limit on DPhi between Calo cluster and Track"} |
|
Gaudi::Property< float > | m_calotrackdeoverp_low {this, "CaloTrackdEoverPLow", 0, "lower limit on E(calo)/p(track)"} |
|
Gaudi::Property< float > | m_calotrackdeoverp_high {this, "CaloTrackdEoverPHigh", 0, "upper limit on track E(calo)/p(track)"} |
|
Gaudi::Property< float > | m_RCAL {this, "RCalBarrelFace", 1470.0*Gaudi::Units::mm , "Radius of inner face of the barrel calorimeter"} |
|
Gaudi::Property< float > | m_ZCAL {this, "ZCalEndcapFace", 3800.0*Gaudi::Units::mm, "z of the inner face of endcap calorimeter"} |
|
ToolHandle< Trk::IParticleCaloExtensionTool > | m_caloExtensionTool |
|
SG::ReadHandleKey< TrigRoiDescriptorCollection > | m_roiCollectionKey |
|
SG::ReadHandleKey< xAOD::TrigEMClusterContainer > | m_TrigEMClusterContainerKey |
|
SG::ReadHandleKey< xAOD::TrackParticleContainer > | m_TrackParticleContainerKey |
|
SG::ReadCondHandleKey< CaloDetDescrManager > | m_caloDetDescrMgrKey |
|
SG::WriteHandleKey< xAOD::TrigElectronContainer > | m_outputElectronsKey |
|
SG::WriteHandleKey< xAOD::TrigElectronContainer > | m_outputDummyElectronsKey |
|
ToolHandle< GenericMonitoringTool > | m_monTool { this, "MonTool", "", "Monitoring tool" } |
|
DataObjIDColl | m_extendedExtraObjects |
| Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks. More...
|
|
StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) More...
|
|
StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) More...
|
|
std::vector< SG::VarHandleKeyArray * > | m_vhka |
|
bool | m_varHandleArraysDeclared |
|
TrigEgammaFastElectronReAlgo is a Trigger Fex Algorithm that retrieves the TrigEMCluster container and the TrackCollection containers and then creates a TrigElectron Container with a subset of calorimeter-ID selection variables that are calculated (eg. E/p) The algo will apply some very loose selection cuts to the TrigElectronContainer created which is of TrigParticle type TrigElectron The TrigElectron conatiner will then be retrieved by the hypothesis algorithm TrigEgammaFastElectronHypo that will perform the corresponding fast electron selection.
Definition at line 49 of file TrigEgammaFastElectronReAlgo.h.
◆ StoreGateSvc_t
◆ TrigEgammaFastElectronReAlgo()
TrigEgammaFastElectronReAlgo::TrigEgammaFastElectronReAlgo |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ cardinality()
unsigned int AthReentrantAlgorithm::cardinality |
( |
| ) |
const |
|
overridevirtualinherited |
Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant.
Override this to return 0 for reentrant algorithms.
Override this to return 0 for reentrant algorithms.
Definition at line 55 of file AthReentrantAlgorithm.cxx.
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode TrigEgammaFastElectronReAlgo::execute |
( |
const EventContext & |
ctx | ) |
const |
|
overridevirtual |
< monitor preselection between track eta and cluster before extrapolation
Create a TrigElectron corresponding to this candidate assume cluster quantities give better estimate of transverse energy (probably a safe assumption for large pT) and that track parameters at perigee give better estimates of angular quantities
Definition at line 74 of file TrigEgammaFastElectronReAlgo.cxx.
81 ATH_CHECK( trigElecColl.record (std::make_unique<xAOD::TrigElectronContainer>(),
82 std::make_unique<xAOD::TrigEMClusterAuxContainer>()) );
89 ATH_CHECK( trigDummyElecColl.record (std::make_unique<xAOD::TrigElectronContainer>(),
90 std::make_unique<xAOD::TrigEMClusterAuxContainer>()) );
96 if (roiCollection->size()==0) {
98 return StatusCode::SUCCESS;
104 <<
", Phi = " << (roiDescriptor)->
phi());
106 float calo_eta(999), calo_phi(999), calo_et(-1);
117 calo_eta = emCluster->
eta();
118 calo_phi = emCluster->
phi();
119 calo_et = emCluster->
et();
124 ATH_MSG_DEBUG(
"searching a matching track: loop over tracks");
130 if (tracks->size() == 0){
131 return StatusCode::SUCCESS;
134 size_t coll_size = tracks->size();
135 trigElecColl->reserve(coll_size);
138 std::vector<float> calotrkdeta_noextrap_mon;
145 auto caloTrackDEtaNoExtrapMon =
Monitored::Collection(
"CaloTrackdEtaNoExtrapMon", calotrkdeta_noextrap_mon );
147 auto mon =
Monitored::Group(
m_monTool, caloPtMon, trackPtMon, caloTrackDEtaMon, caloTrackDPhiMon, etOverPtMon, caloTrackDEtaNoExtrapMon );
154 trigDummyElecColl->push_back(trigDummyElec);
155 trigDummyElec->
init( 0, 0, 0, 0, clusEL, trackDummyEL);
160 ATH_CHECK(caloDetDescrMgrHandle.isValid());
164 for(
unsigned int track_index = 0; track_index < tracks->size(); track_index++)
177 float trkPt = std::abs((trkIter)->
pt());
178 float etoverpt = std::abs(calo_et/trkPt);
179 float calotrkdeta_noextrap = (trkIter)->
eta() - calo_eta;
181 double etaAtCalo=999.;
182 double phiAtCalo=999.;
184 if(!
extrapolate(ctx,*caloDD,emCluster,trkIter,etaAtCalo,phiAtCalo)){
190 " eta = " << etaAtCalo <<
" phi = " << phiAtCalo);
193 trigElecColl->push_back(trigElec);
196 etaAtCalo, phiAtCalo, etoverpt,
199 calotrkdeta_noextrap_mon.push_back(calotrkdeta_noextrap);
203 ATH_MSG_DEBUG(
"Apply cuts on track with index: "<<track_index);
209 ATH_MSG_DEBUG(
"Failed pre extrapolation calo track deta " << calotrkdeta_noextrap);
218 ATH_MSG_DEBUG(
"Failed pre extrapolation calo track deta for high et");
230 if(!
extrapolate(ctx,*caloDD,emCluster,trkIter,etaAtCalo,phiAtCalo)){
235 ATH_MSG_DEBUG(
"extrapolated eta/phi=" << etaAtCalo <<
"/" << phiAtCalo);
237 float dEtaCalo = std::abs(etaAtCalo - calo_eta);
244 float dPhiCalo = std::abs(phiAtCalo - calo_phi);
245 dPhiCalo = ( dPhiCalo <
M_PI ? dPhiCalo : 2*
M_PI - dPhiCalo );
260 " track index= " << track_index <<
" eta = " << etaAtCalo <<
" phi = " << phiAtCalo <<
261 " deta = " << dEtaCalo <<
"dphi = " << dPhiCalo);
263 trigElecColl->push_back(trigElec);
265 etaAtCalo, phiAtCalo, etoverpt,
270 <<
" dphi = " << dPhiCalo <<
" dphi = " << trigElec->
trkClusDphi()
271 <<
" caloEta = " << calo_eta <<
" caloEta = " << trigElec->
caloEta()
272 <<
" caloPhi = " << calo_phi <<
" calophi = " << trigElec->
caloPhi()
273 <<
" etaAtCalo = " << etaAtCalo <<
" etaAtCalo = " << trigElec->
trkEtaAtCalo()
274 <<
" phiAtCalo = " << phiAtCalo <<
" phiAtCalo = " << trigElec->
trkPhiAtCalo()
276 calotrkdeta_noextrap_mon.push_back(calotrkdeta_noextrap);
283 ATH_MSG_DEBUG(
"REGTEST: returning an xAOD::TrigElectronContainer with size "<< trigElecColl->size() <<
".");
285 return StatusCode::SUCCESS;
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ extraOutputDeps()
const DataObjIDColl & AthReentrantAlgorithm::extraOutputDeps |
( |
| ) |
const |
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 79 of file AthReentrantAlgorithm.cxx.
86 return Algorithm::extraOutputDeps();
◆ extrapolate()
Definition at line 288 of file TrigEgammaFastElectronReAlgo.cxx.
297 std::vector<CaloSampling::CaloSample> samples;
307 std::vector<std::unique_ptr<Trk::Surface>> caloSurfaces =
315 if (extension.empty()) {
320 etaAtCalo = extension[0].second->position().eta();
321 phiAtCalo = extension[0].second->position().phi();
323 ATH_MSG_VERBOSE(
"Hit sampling :" << extension.at(0).first <<
" at eta : "
324 << etaAtCalo <<
" at phi : " << phiAtCalo);
◆ filterPassed()
virtual bool AthReentrantAlgorithm::filterPassed |
( |
const EventContext & |
ctx | ) |
const |
|
inlinevirtualinherited |
◆ getCaloPt()
◆ getTkPt()
◆ initialize()
StatusCode TrigEgammaFastElectronReAlgo::initialize |
( |
| ) |
|
|
overridevirtual |
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ isClonable()
bool AthReentrantAlgorithm::isClonable |
( |
| ) |
const |
|
overridevirtualinherited |
Specify if the algorithm is clonable.
Reentrant algorithms are clonable.
Reimplemented in Simulation::BeamEffectsAlg, InDet::SiTrackerSpacePointFinder, InDet::SCT_Clusterization, InDet::SiSPSeededTrackFinder, SCTRawDataProvider, InDet::GNNSeedingTrackMaker, SCT_PrepDataToxAOD, RoIBResultToxAOD, SCT_CablingCondAlgFromCoraCool, SCT_ReadCalibDataTestAlg, SCT_CablingCondAlgFromText, InDet::SiSPGNNTrackMaker, SCT_ReadCalibChipDataTestAlg, SCT_TestCablingAlg, SCT_ConfigurationConditionsTestAlg, ITkPixelCablingAlg, ITkStripCablingAlg, SCTEventFlagWriter, SCT_ConditionsSummaryTestAlg, SCT_ModuleVetoTestAlg, SCT_MonitorConditionsTestAlg, SCT_LinkMaskingTestAlg, SCT_MajorityConditionsTestAlg, SCT_RODVetoTestAlg, SCT_SensorsTestAlg, SCT_TdaqEnabledTestAlg, SCT_SiliconConditionsTestAlg, SCTSiLorentzAngleTestAlg, SCT_ByteStreamErrorsTestAlg, SCT_ConditionsParameterTestAlg, SCT_FlaggedConditionTestAlg, SCT_StripVetoTestAlg, SCT_RawDataToxAOD, and SCTSiPropertiesTestAlg.
Definition at line 44 of file AthReentrantAlgorithm.cxx.
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ renounce()
◆ renounceArray()
◆ setFilterPassed()
virtual void AthReentrantAlgorithm::setFilterPassed |
( |
bool |
state, |
|
|
const EventContext & |
ctx |
|
) |
| const |
|
inlinevirtualinherited |
◆ sysExecute()
StatusCode AthReentrantAlgorithm::sysExecute |
( |
const EventContext & |
ctx | ) |
|
|
overridevirtualinherited |
Execute an algorithm.
We override this in order to work around an issue with the Algorithm base class storing the event context in a member variable that can cause crashes in MT jobs.
Definition at line 67 of file AthReentrantAlgorithm.cxx.
69 return Gaudi::Algorithm::sysExecute (ctx);
◆ sysInitialize()
StatusCode AthReentrantAlgorithm::sysInitialize |
( |
| ) |
|
|
overridevirtualinherited |
Override sysInitialize.
Override sysInitialize from the base class.
Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc
Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc
Reimplemented from AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >.
Reimplemented in InputMakerBase, and HypoBase.
Definition at line 96 of file AthReentrantAlgorithm.cxx.
107 if ( cs.retrieve().isFailure() ) {
109 return StatusCode::SUCCESS;
111 if (cs->regHandle(
this,*
h).isFailure()) {
112 sc = StatusCode::FAILURE;
113 ATH_MSG_ERROR(
"unable to register WriteCondHandle " <<
h->fullKey()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_acceptAll
Gaudi::Property<bool> TrigEgammaFastElectronReAlgo::m_acceptAll {this, "AcceptAll", false, "Build electrons for all tracks"} |
|
private |
◆ m_caloDetDescrMgrKey
Initial value:{
this,
"CaloDetDescrManager",
"CaloDetDescrManager",
"SG Key for CaloDetDescrManager in the Condition Store"}
Definition at line 114 of file TrigEgammaFastElectronReAlgo.h.
◆ m_caloExtensionTool
Initial value:{
this, "ParticleCaloExtensionTool",
"Trk::ParticleCaloExtensionTool/ParticleCaloExtensionTool",
"Tool to extrapolate Track to Calo inner surface"}
Definition at line 94 of file TrigEgammaFastElectronReAlgo.h.
◆ m_calotrackdeoverp_high
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_calotrackdeoverp_high {this, "CaloTrackdEoverPHigh", 0, "upper limit on track E(calo)/p(track)"} |
|
private |
◆ m_calotrackdeoverp_low
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_calotrackdeoverp_low {this, "CaloTrackdEoverPLow", 0, "lower limit on E(calo)/p(track)"} |
|
private |
◆ m_calotrackdeta
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_calotrackdeta {this, "CaloTrackdETA", 0, "Upper limit on DEta between Calo cluster and Track"} |
|
private |
◆ m_calotrackdphi
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_calotrackdphi {this, "CaloTrackdPHI", 0, "Upper limit on DPhi between Calo cluster and Track"} |
|
private |
◆ m_calotrkdeta_noextrap
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_calotrkdeta_noextrap {this, "CaloTrackdEtaNoExtrap", 0.5, "Upper limit on DEta between Calo cluster and Track for track preselection before extrapolation"} |
|
private |
◆ m_calotrkdeta_noextrap_highet
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::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)"} |
|
private |
◆ m_clusEtthr
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_clusEtthr {this, "ClusEt", 20.0*Gaudi::Units::GeV , " lower limit on cluster Et"} |
|
private |
◆ m_detStore
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthReentrantAlgorithm::m_extendedExtraObjects |
|
privateinherited |
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
Empty if no symlinks were found.
Definition at line 153 of file AthReentrantAlgorithm.h.
◆ m_monTool
◆ m_outputDummyElectronsKey
◆ m_outputElectronsKey
◆ m_RCAL
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_RCAL {this, "RCalBarrelFace", 1470.0*Gaudi::Units::mm , "Radius of inner face of the barrel calorimeter"} |
|
private |
◆ m_roiCollectionKey
◆ m_TrackParticleContainerKey
◆ m_trackPtthr
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_trackPtthr {this, "TrackPt", 5.0*Gaudi::Units::GeV , "lower limit on TrackPt cut" } |
|
private |
◆ m_trackPtthr_highet
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_trackPtthr_highet {this, "TrackPtHighEt", 2.0*Gaudi::Units::GeV , "lower limit on TrackPt cut High Et Cluster (20GeV)"} |
|
private |
◆ m_TrigEMClusterContainerKey
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_ZCAL
Gaudi::Property<float> TrigEgammaFastElectronReAlgo::m_ZCAL {this, "ZCalEndcapFace", 3800.0*Gaudi::Units::mm, "z of the inner face of endcap calorimeter"} |
|
private |
The documentation for this class was generated from the following files:
bool extrapolate(const EventContext &ctx, const CaloDetDescrManager &caloDD, const xAOD::TrigEMCluster *, const xAOD::TrackParticle *, double &, double &) const
Class describing an electron reconstructed in the HLT.
Group
Properties of a chain group.
float eta() const
get Eta (calibrated)
Scalar phi() const
phi method
Gaudi::Property< float > m_calotrackdphi
Scalar eta() const
pseudorapidity method
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)
virtual unsigned int roiWord() const override final
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
nope - should be used for standalone also, perhaps need to protect the class def bits #ifndef XAOD_AN...
Gaudi::Property< float > m_calotrackdeoverp_low
#define ATH_MSG_VERBOSE(x)
float trkClusDeta() const
The absolute value of the track-calo eta measurement difference.
ValuesCollection< T > Collection(std::string name, const T &collection)
Declare a monitored (double-convertible) collection.
virtual void setOwner(IDataHandleHolder *o)=0
float trkEtaAtCalo() const
Get the track's pseudorapidity extrapolated to the calorimeter.
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
Gaudi::Property< float > m_calotrkdeta_noextrap_highet
ToolHandle< Trk::IParticleCaloExtensionTool > m_caloExtensionTool
const Trk::Perigee & perigeeParameters() const
Returns the Trk::MeasuredPerigee track parameters.
float phi() const
get Phi (calibrated)
static double getTkPt(const xAOD::TrigElectron *el)
AthReentrantAlgorithm()
Default constructor:
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
Gaudi::Property< float > m_calotrackdeoverp_high
float trkPhiAtCalo() const
Get the track's azimuthal angle extrapolated to the calorimeter.
static double getCaloPt(const xAOD::TrigElectron *el)
::StatusCode StatusCode
StatusCode definition for legacy code.
setTeId setLumiBlock roiId
Gaudi::Property< float > m_clusEtthr
#define CHECK(...)
Evaluate an expression and check for errors.
Gaudi::Property< bool > m_acceptAll
float etOverPt() const
Get for the electron.
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
Gaudi::Property< float > m_trackPtthr_highet
DataObjIDColl m_extendedExtraObjects
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
SG::WriteHandleKey< xAOD::TrigElectronContainer > m_outputElectronsKey
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
ElementLink implementation for ROOT usage.
SG::ReadHandleKey< TrigRoiDescriptorCollection > m_roiCollectionKey
virtual StatusCode sysInitialize() override
Override sysInitialize.
StatusCode initialize(bool used=true)
void init(uint32_t roi, float trkEtaAtCalo, float trkPhiAtCalo, float etOverPt, const EMClusterLink_t &clLink, const TrackParticleLink_t &tpLink)
Initialisation function, setting most properties of the object.
TrigElectron_v1 TrigElectron
Declare the latest version of the class.
SG::WriteHandleKey< xAOD::TrigElectronContainer > m_outputDummyElectronsKey
Gaudi::Property< float > m_trackPtthr
This class provides the client interface for accessing the detector description information common to...
SG::ReadHandleKey< xAOD::TrigEMClusterContainer > m_TrigEMClusterContainerKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_TrackParticleContainerKey
#define ATH_MSG_WARNING(x)
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloDetDescrMgrKey
index_type index() const
Get the index of the element inside of its container.
Gaudi::Property< float > m_calotrackdeta
float trkClusDphi() const
The absolute value of the track-calo phi measurement difference.
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
ToolHandle< GenericMonitoringTool > m_monTool
float et() const
get Et (calibrated)
Gaudi::Property< float > m_calotrkdeta_noextrap
Class describing a TrackParticle.
float caloPhi() const
Azimuthal angle ( ) of the electron in the calorimeter.
Description of a trigger EM cluster.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
float energy() const
get Energy (calibrated)
float caloEta() const
Pseudorapidity ( ) of the electron in the calorimeter.