ATLAS Offline Software
IMuonRecoValidationTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUON_IMUONRECOVALIDATIONTOOL_H
6 #define MUON_IMUONRECOVALIDATIONTOOL_H
7 
8 #include "GaudiKernel/IAlgTool.h"
14 #include "TrkTrack/Track.h"
16 
17 namespace Muon {
18 
19  struct MuonCandidate;
20 
21  class IMuonRecoValidationTool : virtual public IAlgTool {
22  public:
24  virtual ~IMuonRecoValidationTool() = default;
25 
27  static const InterfaceID& interfaceID() {
28  static const InterfaceID IID_IMuonRecoValidationTool("Muon::IMuonRecoValidationTool", 1, 0);
29  return IID_IMuonRecoValidationTool;
30  }
31 
33  virtual bool addTrackParticle(const xAOD::TrackParticle& indetTrackParticle,
34  const MuonSystemExtension& muonSystemExtention) const = 0;
35 
37  virtual bool add(const MuonSystemExtension::Intersection& intersection, const MuonSegment& segment, int stage) const = 0;
38 
41  const MuonHough::MuonLayerHough::Maximum& maximum) const = 0;
42 
44  virtual bool add(const MuonSystemExtension::Intersection& intersection, const Trk::PrepRawData& prd, float expos,
45  float expos_err) const = 0;
46 
49 
52  const Amg::Vector3D& gpos, float time, float errorTime) const = 0;
53 
55  virtual bool addMuonCandidate(const xAOD::TrackParticle& indetTrackParticle, const MuonCandidate* candidate,
56  Trk::Track* combinedTrack, int ntimes, float beta, float chi2ndof, int stage) const = 0;
57 
59  virtual bool addTimeMeasurements(const xAOD::TrackParticle& indetTrackParticle, const MuGirlNS::StauHits& stauHits) const = 0;
60  };
61 
62 } // namespace Muon
63 
64 #endif
Muon::MuonCandidate
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonLayerEvent/MuonLayerEvent/MuonCandidate.h:14
python.FPGATrackSimAnalysisConfig.stage
stage
Definition: FPGATrackSimAnalysisConfig.py:604
Muon::IMuonRecoValidationTool::~IMuonRecoValidationTool
virtual ~IMuonRecoValidationTool()=default
Virtual destructor.
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Muon::IMuonRecoValidationTool::addTrackParticle
virtual bool addTrackParticle(const xAOD::TrackParticle &indetTrackParticle, const MuonSystemExtension &muonSystemExtention) const =0
add a new TrackParticle with it's muon system extension
Muon::IMuonRecoValidationTool::add
virtual bool add(const MuonSystemExtension::Intersection &intersection, const MuonSegment &segment, int stage) const =0
add a new segment, indicate the stage of the reco
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
intersection
std::vector< std::string > intersection(std::vector< std::string > &v1, std::vector< std::string > &v2)
Definition: compareFlatTrees.cxx:25
Trk::combinedTrack
void combinedTrack(long int ICH, double *pv0, double *covi, double BMAG, double *par, double *covo)
Definition: XYZtrp.cxx:113
PrepRawData.h
MuonLayerHough.h
Track.h
Muon::IMuonRecoValidationTool::addTimeMeasurement
virtual bool addTimeMeasurement(const MuonSystemExtension::Intersection &intersection, const Trk::MeasurementBase &meas) const =0
add a new time measurement
MuonHough::MuonLayerHough::Maximum
struct representing the maximum in the hough space
Definition: MuonLayerHough.h:56
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
Muon::IMuonRecoValidationTool::addMuonCandidate
virtual bool addMuonCandidate(const xAOD::TrackParticle &indetTrackParticle, const MuonCandidate *candidate, Trk::Track *combinedTrack, int ntimes, float beta, float chi2ndof, int stage) const =0
add new MuonCandidate
Muon::MuonSystemExtension
Tracking class to hold the extrapolation from a particle from the calo entry to the end of muon syste...
Definition: MuonSystemExtension.h:18
Muon::IMuonRecoValidationTool::add
virtual bool add(const MuonSystemExtension::Intersection &intersection, const Trk::PrepRawData &prd, float expos, float expos_err) const =0
add a new prd
Muon::IMuonRecoValidationTool::interfaceID
static const InterfaceID & interfaceID()
AlgTool and IAlgTool interface methods.
Definition: IMuonRecoValidationTool.h:27
Trk::PrepRawData
Definition: PrepRawData.h:62
Trk::MeasurementBase
Definition: MeasurementBase.h:58
MuonSystemExtension.h
Muon::IMuonRecoValidationTool
Definition: IMuonRecoValidationTool.h:21
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
Muon::IMuonRecoValidationTool::addTimeMeasurement
virtual bool addTimeMeasurement(const MuonSystemExtension::Intersection &intersection, const Identifier &id, const Amg::Vector3D &gpos, float time, float errorTime) const =0
add a new time measurement
TrackParticle.h
Muon::IMuonRecoValidationTool::add
virtual bool add(const MuonSystemExtension::Intersection &intersection, const MuonHough::MuonLayerHough::Maximum &maximum) const =0
add a new hough maximum
CaloSwCorrections.time
def time(flags, cells_name, *args, **kw)
Definition: CaloSwCorrections.py:242
MuonSegment.h
CandidateSummary.h
Muon::MuonSystemExtension::Intersection
data per intersection
Definition: MuonSystemExtension.h:21
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
Muon::MuonSegment
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonSegment/MuonSegment/MuonSegment.h:45
MuonParameters::beta
@ beta
Definition: MuonParamDefs.h:144
MuGirlNS::StauHits
std::vector< StauHit > StauHits
Definition: CandidateSummary.h:67
Muon::IMuonRecoValidationTool::addTimeMeasurements
virtual bool addTimeMeasurements(const xAOD::TrackParticle &indetTrackParticle, const MuGirlNS::StauHits &stauHits) const =0
add StauHits to ntuple
NSWL1::PadTriggerAdapter::segment
Muon::NSW_PadTriggerSegment segment(const NSWL1::PadTrigger &data)
Definition: PadTriggerAdapter.cxx:5