ATLAS Offline Software
TrigTauMonitorTruthAlgorithm.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGTAUMONITORING_TRIGTAUMONITORTRUTHALGORITHM_H
6 #define TRIGTAUMONITORING_TRIGTAUMONITORTRUTHALGORITHM_H
7 
10 
12 
14 public:
15  TrigTauMonitorTruthAlgorithm(const std::string& name, ISvcLocator* pSvcLocator);
16  virtual StatusCode initialize() override;
17 
18 private:
19  // Get truth 1P and 3P Taus that pass the quality selection cuts
20  std::pair<std::vector<std::shared_ptr<xAOD::TruthParticle>>, std::vector<std::shared_ptr<xAOD::TruthParticle>>> getTruthTaus(const EventContext& ctx, const float threshold = 20.0) const;
21 
22  // Process truth tau object
23  StatusCode examineTruthTau(const std::shared_ptr<xAOD::TruthParticle>& xTruthParticle) const;
24 
25  virtual StatusCode processEvent(const EventContext& ctx) const override;
26 
27  void fillTruthEfficiency(const std::vector<const xAOD::TauJet*>& online_tau_vec_all, const std::vector<std::shared_ptr<xAOD::TruthParticle>>& true_taus, const std::string& trigger, const std::string& nProng) const;
28  void fillTruthVars(const std::vector<const xAOD::TauJet*>& tau_vec, const std::vector<std::shared_ptr<xAOD::TruthParticle>>& true_taus, const std::string& trigger, const std::string& nProng) const;
29 
30 
31  // StorageGate keys
32  SG::ReadHandleKey< xAOD::TruthParticleContainer> m_truthParticleKey{this, "truthParticleKey", "TruthParticles", "TruthParticleContainer key"};
33 
34 };
35 
36 #endif
TrigTauMonitorTruthAlgorithm::TrigTauMonitorTruthAlgorithm
TrigTauMonitorTruthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TrigTauMonitorTruthAlgorithm.cxx:10
TrigTauMonitorTruthAlgorithm
Definition: TrigTauMonitorTruthAlgorithm.h:13
TruthParticleContainer.h
SG::ReadHandleKey< xAOD::TruthParticleContainer >
TrigTauMonitorTruthAlgorithm::examineTruthTau
StatusCode examineTruthTau(const std::shared_ptr< xAOD::TruthParticle > &xTruthParticle) const
Definition: TrigTauMonitorTruthAlgorithm.cxx:73
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrigTauMonitorTruthAlgorithm::fillTruthEfficiency
void fillTruthEfficiency(const std::vector< const xAOD::TauJet * > &online_tau_vec_all, const std::vector< std::shared_ptr< xAOD::TruthParticle >> &true_taus, const std::string &trigger, const std::string &nProng) const
Definition: TrigTauMonitorTruthAlgorithm.cxx:159
TrigTauMonitorBaseAlgorithm.h
TruthVertex.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
TrigTauMonitorTruthAlgorithm::initialize
virtual StatusCode initialize() override
initialize
Definition: TrigTauMonitorTruthAlgorithm.cxx:15
threshold
Definition: chainparser.cxx:74
TrigTauMonitorBaseAlgorithm
Definition: TrigTauMonitorBaseAlgorithm.h:24
TrigTauMonitorTruthAlgorithm::getTruthTaus
std::pair< std::vector< std::shared_ptr< xAOD::TruthParticle > >, std::vector< std::shared_ptr< xAOD::TruthParticle > > > getTruthTaus(const EventContext &ctx, const float threshold=20.0) const
Definition: TrigTauMonitorTruthAlgorithm.cxx:24
TrigTauMonitorTruthAlgorithm::processEvent
virtual StatusCode processEvent(const EventContext &ctx) const override
Definition: TrigTauMonitorTruthAlgorithm.cxx:128
TrigTauMonitorTruthAlgorithm::fillTruthVars
void fillTruthVars(const std::vector< const xAOD::TauJet * > &tau_vec, const std::vector< std::shared_ptr< xAOD::TruthParticle >> &true_taus, const std::string &trigger, const std::string &nProng) const
Definition: TrigTauMonitorTruthAlgorithm.cxx:201
TrigTauMonitorTruthAlgorithm::m_truthParticleKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthParticleKey
Definition: TrigTauMonitorTruthAlgorithm.h:32