ATLAS Offline Software
Loading...
Searching...
No Matches
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
17namespace 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
virtual bool add(const MuonSystemExtension::Intersection &intersection, const MuonHough::MuonLayerHough::Maximum &maximum) const =0
add a new hough maximum
virtual bool addTrackParticle(const xAOD::TrackParticle &indetTrackParticle, const MuonSystemExtension &muonSystemExtention) const =0
add a new TrackParticle with it's muon system extension
virtual bool add(const MuonSystemExtension::Intersection &intersection, const Trk::PrepRawData &prd, float expos, float expos_err) const =0
add a new prd
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
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
virtual bool addTimeMeasurements(const xAOD::TrackParticle &indetTrackParticle, const MuGirlNS::StauHits &stauHits) const =0
add StauHits to ntuple
virtual bool add(const MuonSystemExtension::Intersection &intersection, const MuonSegment &segment, int stage) const =0
add a new segment, indicate the stage of the reco
static const InterfaceID & interfaceID()
AlgTool and IAlgTool interface methods.
virtual bool addTimeMeasurement(const MuonSystemExtension::Intersection &intersection, const Trk::MeasurementBase &meas) const =0
add a new time measurement
virtual ~IMuonRecoValidationTool()=default
Virtual destructor.
This is the common class for 3D segments used in the muon spectrometer.
Tracking class to hold the extrapolation from a particle from the calo entry to the end of muon syste...
This class is the pure abstract base class for all fittable tracking measurements.
std::vector< std::string > intersection(std::vector< std::string > &v1, std::vector< std::string > &v2)
Eigen::Matrix< double, 3, 1 > Vector3D
std::vector< StauHit > StauHits
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
TrackParticle_v1 TrackParticle
Reference the current persistent version:
struct representing the maximum in the hough space