ATLAS Offline Software
DetailedTrackGradeFactory.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 JETTAGTOOLS_DetailedTrackGradeFactory_H
6 #define JETTAGTOOLS_DetailedTrackGradeFactory_H
7 
22 #include <string>
23 #include <vector>
24 
25 #include "GaudiKernel/ToolHandle.h"
27 
29 
30 namespace Analysis
31 {
32 
33  class TrackGrade;
34 
36 {
37  public:
38 
39  DetailedTrackGradeFactory(const std::string&,const std::string&,const IInterface*);
40  virtual ~DetailedTrackGradeFactory() = default;
41 
43  virtual StatusCode initialize() override;
44 
46  const xAOD::IParticle::FourMom_t & jetMomentum) const override;
47 
48  virtual const TrackGradesDefinition & getTrackGradesDefinition() const override;
49 
50 private:
51 
53 
54  bool m_hitBLayerGrade; // grade for tracks without hit in First Layers
56 
57  bool m_useRun2TrackGrading; // enabling run2 grading
58  bool m_useITkTrackGrading; // enabling ITk grading
59  bool m_useInnerLayers0HitInfo; //grading categories with no hits in one of the first 2 innermost pixel layers
60  bool m_useDetailSharedHitInfo; //grading categories according to shared hit content
61  bool m_useDetailSplitHitInfo; //grading categories according to Split hit content
62 
71 
72  bool m_ptFracGrade; // grade for tracks with ptFrac < m_ptFracCut
73  double m_ptFracCut;
74 
76  std::vector<double> m_ptLowerCuts;
77  std::vector<double> m_etaLowerCuts;
78 
79  std::vector<std::vector<double>> m_gammaLowerCuts;
80 
81 };
82 
83 }
84 #endif
85 
Analysis::DetailedTrackGradeFactory::m_nSharedPix
int m_nSharedPix
max. number of shared hits in B layer
Definition: DetailedTrackGradeFactory.h:64
ITrackGradeFactory.h
Analysis::TrackGrade
Definition: TrackGrade.h:11
Analysis::DetailedTrackGradeFactory::m_nSharedSi
int m_nSharedSi
max. number of shared hits in SCT
Definition: DetailedTrackGradeFactory.h:66
Analysis::DetailedTrackGradeFactory::DetailedTrackGradeFactory
DetailedTrackGradeFactory(const std::string &, const std::string &, const IInterface *)
Definition: DetailedTrackGradeFactory.cxx:13
Analysis::TrackGradesDefinition
Definition: TrackGradesDefinition.h:15
Analysis::DetailedTrackGradeFactory::m_hitBLayerGrade
bool m_hitBLayerGrade
Definition: DetailedTrackGradeFactory.h:54
Analysis::DetailedTrackGradeFactory::m_useSharedHitInfo
bool m_useSharedHitInfo
Definition: DetailedTrackGradeFactory.h:55
Analysis::DetailedTrackGradeFactory::m_ptFracCut
double m_ptFracCut
Definition: DetailedTrackGradeFactory.h:73
Analysis::DetailedTrackGradeFactory::m_nSharedSct
int m_nSharedSct
max. number of shared hits in pixels
Definition: DetailedTrackGradeFactory.h:65
Analysis::DetailedTrackGradeFactory::getGrade
virtual TrackGrade * getGrade(const xAOD::TrackParticle &track, const xAOD::IParticle::FourMom_t &jetMomentum) const override
Definition: DetailedTrackGradeFactory.cxx:268
Analysis::DetailedTrackGradeFactory::m_nSharedNextToInnermostPixelLayer
int m_nSharedNextToInnermostPixelLayer
max. number of shared hits in innermost pixel layer (IBL)
Definition: DetailedTrackGradeFactory.h:68
Analysis::DetailedTrackGradeFactory::m_nSharedBLayer
int m_nSharedBLayer
Definition: DetailedTrackGradeFactory.h:63
xAOD::IParticle::FourMom_t
TLorentzVector FourMom_t
Definition of the 4-momentum type.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:68
Analysis::DetailedTrackGradeFactory::m_useDetailSplitHitInfo
bool m_useDetailSplitHitInfo
Definition: DetailedTrackGradeFactory.h:61
Analysis::DetailedTrackGradeFactory::m_nOutlierPix
int m_nOutlierPix
max. number of shared hits next-to-innermost pixel layer (Run1 B layer)
Definition: DetailedTrackGradeFactory.h:69
Analysis::ITrackGradeFactory
Definition: ITrackGradeFactory.h:47
Analysis::DetailedTrackGradeFactory::m_ptFracGrade
bool m_ptFracGrade
max. number of spoilt hits in pixel
Definition: DetailedTrackGradeFactory.h:72
TrackGradesDefinition.h
Analysis::DetailedTrackGradeFactory::m_trackGradesDefinition
TrackGradesDefinition m_trackGradesDefinition
Definition: DetailedTrackGradeFactory.h:52
Analysis::DetailedTrackGradeFactory::m_nSharedInnermostPixelLayer
int m_nSharedInnermostPixelLayer
max. number of shared hits in pixels+SCT
Definition: DetailedTrackGradeFactory.h:67
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
Analysis::DetailedTrackGradeFactory::m_etaLowerCuts
std::vector< double > m_etaLowerCuts
Definition: DetailedTrackGradeFactory.h:77
Analysis::DetailedTrackGradeFactory::getTrackGradesDefinition
virtual const TrackGradesDefinition & getTrackGradesDefinition() const override
Definition: DetailedTrackGradeFactory.cxx:260
Analysis::DetailedTrackGradeFactory::m_useITkTrackGrading
bool m_useITkTrackGrading
Definition: DetailedTrackGradeFactory.h:58
Analysis
The namespace of all packages in PhysicsAnalysis/JetTagging.
Definition: BTaggingCnvAlg.h:20
Analysis::DetailedTrackGradeFactory::m_ptLowerCuts
std::vector< double > m_ptLowerCuts
grades in pt and/or |eta| of tracks
Definition: DetailedTrackGradeFactory.h:76
TrackParticle.h
Analysis::DetailedTrackGradeFactory::m_nSpoiltPix
int m_nSpoiltPix
max. number of pixel outliers in two first layers
Definition: DetailedTrackGradeFactory.h:70
Analysis::DetailedTrackGradeFactory::initialize
virtual StatusCode initialize() override
AlgTool initialize method.
Definition: DetailedTrackGradeFactory.cxx:60
Analysis::DetailedTrackGradeFactory::m_ptEtaGrades
bool m_ptEtaGrades
cut on ptFrac
Definition: DetailedTrackGradeFactory.h:75
Analysis::DetailedTrackGradeFactory
Definition: DetailedTrackGradeFactory.h:36
Analysis::DetailedTrackGradeFactory::m_useInnerLayers0HitInfo
bool m_useInnerLayers0HitInfo
Definition: DetailedTrackGradeFactory.h:59
Analysis::DetailedTrackGradeFactory::m_useDetailSharedHitInfo
bool m_useDetailSharedHitInfo
Definition: DetailedTrackGradeFactory.h:60
Analysis::DetailedTrackGradeFactory::m_gammaLowerCuts
std::vector< std::vector< double > > m_gammaLowerCuts
Definition: DetailedTrackGradeFactory.h:79
Analysis::DetailedTrackGradeFactory::~DetailedTrackGradeFactory
virtual ~DetailedTrackGradeFactory()=default
Analysis::DetailedTrackGradeFactory::m_useRun2TrackGrading
bool m_useRun2TrackGrading
if false the following cuts are ignored
Definition: DetailedTrackGradeFactory.h:57
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
AthAlgTool
Definition: AthAlgTool.h:26