ATLAS Offline Software
Loading...
Searching...
No Matches
TrigTauMonitorTandPAlgorithm.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRIGTAUMONITORING_TRIGTAUMONITORTANDPALGORITHM_H
6#define TRIGTAUMONITORING_TRIGTAUMONITORTANDPALGORITHM_H
7
11
13public:
14 TrigTauMonitorTandPAlgorithm(const std::string& name, ISvcLocator* pSvcLocator);
15 virtual StatusCode initialize() override;
16
17private:
18 // Require at least 1 offline Tau per event (will bias the variable distributions for background events)
19 Gaudi::Property<bool> m_requireOfflineTaus{this, "RequireOfflineTaus", true, "Require at leat 1 offline tau per event"};
20 Gaudi::Property<unsigned int> m_offline_tau_id{this, "OfflineTauID", TauID::RNN, "Offline TauID (1: RNN, 2: GNTau)"};
21
22 // Get offline electrons that pass the quality selection cuts
23 std::vector<const xAOD::Electron*> getOfflineElectrons(const EventContext& ctx, const float threshold = 0.0) const;
24
25 // Get offline muons that pass the quality selection cuts
26 std::vector<const xAOD::Muon*> getOfflineMuons(const EventContext& ctx, const float threshold = 0.0) const;
27
28 // Get online electrons
29 std::vector<const xAOD::Electron*> getOnlineElectrons(const std::string& trigger) const;
30
31 // Get online muons
32 std::vector<const xAOD::Muon*> getOnlineMuons(const std::string& trigger) const;
33
34 virtual StatusCode processEvent(const EventContext& ctx) const override;
35
36 void fillTAndPHLTEfficiencies(const EventContext& ctx, const std::string& trigger, const std::vector<const xAOD::IParticle*>& offline_lep_vec, const std::vector<const xAOD::IParticle*>& online_lep_vec, const std::vector<const xAOD::TauJet*>& offline_tau_vec, const std::vector<const xAOD::TauJet*>& online_tau_vec) const;
37 void fillTagAndProbeVars(const std::string& trigger, const std::vector<const xAOD::TauJet*>& tau_vec, const std::vector<const xAOD::IParticle*>& lep_vec) const;
38
39 // StorageGate keys
40 SG::ReadHandleKey<xAOD::ElectronContainer> m_offlineElectronKey{this, "offlineElectronKey", "Electrons", "Offline Electron key for tau-e chains"};
41 SG::ReadHandleKey<xAOD::MuonContainer> m_offlineMuonKey{this, "offlineMuonKey", "Muons", "Offline Muon key for tau-mu chains"};
42
43 SG::ReadHandleKey<xAOD::ElectronContainer> m_hltElectronKey{this, "hltElectronKey", "HLT_egamma_Electrons_GSF", "HLT Electrons key for tau-e chains"};
44 SG::ReadHandleKey<xAOD::MuonContainer> m_hltMuonKey{this, "hltMuonKey", "HLT_MuonsIso", "HLT Muons key for tau-mu chains"};
45};
46
47#endif
Property holding a SG store/key/clid from which a ReadHandle is made.
TrigTauMonitorBaseAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadHandleKey< xAOD::MuonContainer > m_hltMuonKey
TrigTauMonitorTandPAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
virtual StatusCode processEvent(const EventContext &ctx) const override
SG::ReadHandleKey< xAOD::ElectronContainer > m_offlineElectronKey
void fillTAndPHLTEfficiencies(const EventContext &ctx, const std::string &trigger, const std::vector< const xAOD::IParticle * > &offline_lep_vec, const std::vector< const xAOD::IParticle * > &online_lep_vec, const std::vector< const xAOD::TauJet * > &offline_tau_vec, const std::vector< const xAOD::TauJet * > &online_tau_vec) const
Gaudi::Property< unsigned int > m_offline_tau_id
std::vector< const xAOD::Electron * > getOfflineElectrons(const EventContext &ctx, const float threshold=0.0) const
std::vector< const xAOD::Muon * > getOfflineMuons(const EventContext &ctx, const float threshold=0.0) const
SG::ReadHandleKey< xAOD::ElectronContainer > m_hltElectronKey
void fillTagAndProbeVars(const std::string &trigger, const std::vector< const xAOD::TauJet * > &tau_vec, const std::vector< const xAOD::IParticle * > &lep_vec) const
std::vector< const xAOD::Muon * > getOnlineMuons(const std::string &trigger) const
std::vector< const xAOD::Electron * > getOnlineElectrons(const std::string &trigger) const
SG::ReadHandleKey< xAOD::MuonContainer > m_offlineMuonKey
virtual StatusCode initialize() override
initialize