ATLAS Offline Software
MuFastPatternFinder.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGL2MUONSA_MUFASTPATTERNFINDER_H
6 #define TRIGL2MUONSA_MUFASTPATTERNFINDER_H
7 
9 #include "GaudiKernel/ServiceHandle.h"
10 #include "GaudiKernel/ToolHandle.h"
11 
14 #include "MuonRoad.h"
15 #include "MdtData.h"
16 #include "TrackData.h"
18 #include "NswPatternFinder.h"
19 
20 // --------------------------------------------------------------------------------
21 // --------------------------------------------------------------------------------
22 
23 namespace TrigL2MuonSA {
24 
26 {
27  unsigned int ntot;
28  unsigned int ntot_all;
29  unsigned int ndigi;
30  unsigned int ndigi_all;
31  double ResSum;
32  std::vector<unsigned int> indexes;
33 };
34 
35 // --------------------------------------------------------------------------------
36 // --------------------------------------------------------------------------------
37 
39 {
40  public:
41 
42  MuFastPatternFinder(const std::string& type,
43  const std::string& name,
44  const IInterface* parent);
45 
46  virtual StatusCode initialize() override;
47 
48  private:
49 
50  double calc_residual(double aw,double bw,double x,double y) const;
51  void doMdtCalibration(TrigL2MuonSA::MdtHitData& mdtHit, double track_phi, double phi0, bool isEndcap) const;
52 
53  public:
54 
56  TrigL2MuonSA::MdtHits& mdtHits,
57  std::vector<TrigL2MuonSA::TrackPattern>& v_trackPatterns) const;
58 
60  TrigL2MuonSA::MdtHits& mdtHits,
61  TrigL2MuonSA::StgcHits& stgcHits,
62  TrigL2MuonSA::MmHits& mmHits,
63  std::vector<TrigL2MuonSA::TrackPattern>& v_trackPatterns) const;
64  private:
65  ToolHandle<NswPatternFinder> m_nswPatternFinder {this, "NswPatternFinder", "TrigL2MuonSA::NswPatternFinder"};
66 
67  // MDT calibration service
68  ToolHandle<IMdtCalibrationTool> m_mdtCalibrationTool{this, "CalibrationTool", "MdtCalibrationTool"};
69 
70  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
71 };
72 
73 // --------------------------------------------------------------------------------
74 // --------------------------------------------------------------------------------
75 
76 } // namespace TrigL2MuonSA
77 
78 #endif // MUFASTPATTERNFINDER_H
MuonRoad.h
InDetAccessor::phi0
@ phi0
Definition: InDetAccessor.h:33
IMdtCalibrationTool.h
MdtData.h
TrigL2MuonSA::MdtHits
std::vector< MdtHitData > MdtHits
Definition: MdtData.h:57
TrigL2MuonSA::MdtHitData
Definition: MdtData.h:18
TrigL2MuonSA::MdtLayerHits::indexes
std::vector< unsigned int > indexes
Definition: MuFastPatternFinder.h:32
TrackData.h
x
#define x
GeoPrimitives.h
NswPatternFinder.h
TrigL2MuonSA::MuFastPatternFinder::calc_residual
double calc_residual(double aw, double bw, double x, double y) const
Definition: MuFastPatternFinder.cxx:306
TrigL2MuonSA::MdtLayerHits
Definition: MuFastPatternFinder.h:26
TrigL2MuonSA::MdtLayerHits::ndigi_all
unsigned int ndigi_all
Definition: MuFastPatternFinder.h:30
TrigL2MuonSA::MuonRoad
Definition: MuonRoad.h:20
TrigL2MuonSA::MuFastPatternFinder::m_nswPatternFinder
ToolHandle< NswPatternFinder > m_nswPatternFinder
Definition: MuFastPatternFinder.h:65
TrigL2MuonSA::MuFastPatternFinder
Definition: MuFastPatternFinder.h:39
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
TrigL2MuonSA::MuFastPatternFinder::initialize
virtual StatusCode initialize() override
Definition: MuFastPatternFinder.cxx:23
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TrigL2MuonSA::MuFastPatternFinder::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuFastPatternFinder.h:70
TrigL2MuonSA::MdtLayerHits::ndigi
unsigned int ndigi
Definition: MuFastPatternFinder.h:29
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
TrigL2MuonSA::MdtLayerHits::ResSum
double ResSum
Definition: MuFastPatternFinder.h:31
TrigL2MuonSA::MdtLayerHits::ntot
unsigned int ntot
Definition: MuFastPatternFinder.h:27
TrigL2MuonSA::MmHits
std::vector< MmHitData > MmHits
Definition: MmData.h:47
y
#define y
TrigL2MuonSA::MuFastPatternFinder::findPatterns
StatusCode findPatterns(const TrigL2MuonSA::MuonRoad &muonRoad, TrigL2MuonSA::MdtHits &mdtHits, std::vector< TrigL2MuonSA::TrackPattern > &v_trackPatterns) const
Definition: MuFastPatternFinder.cxx:112
TrigL2MuonSA::MuFastPatternFinder::MuFastPatternFinder
MuFastPatternFinder(const std::string &type, const std::string &name, const IInterface *parent)
Definition: MuFastPatternFinder.cxx:13
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TrigL2MuonSA::StgcHits
std::vector< StgcHitData > StgcHits
Definition: StgcData.h:49
TrigL2MuonSA::MuFastPatternFinder::doMdtCalibration
void doMdtCalibration(TrigL2MuonSA::MdtHitData &mdtHit, double track_phi, double phi0, bool isEndcap) const
Definition: MuFastPatternFinder.cxx:33
AthAlgTool
Definition: AthAlgTool.h:26
TrigL2MuonSA::MdtLayerHits::ntot_all
unsigned int ntot_all
Definition: MuFastPatternFinder.h:28
TrigL2MuonSA::MuFastPatternFinder::m_mdtCalibrationTool
ToolHandle< IMdtCalibrationTool > m_mdtCalibrationTool
Definition: MuFastPatternFinder.h:68
IMuonIdHelperSvc.h
TrigL2MuonSA
Definition: AlignmentBarrelLUT.h:13
ServiceHandle< Muon::IMuonIdHelperSvc >