Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:56:43

0001 #ifndef Alignment_MuonAlignmentAlgorithms_MuonTrackCSCChamberResidual_H
0002 #define Alignment_MuonAlignmentAlgorithms_MuonTrackCSCChamberResidual_H
0003 
0004 /** \class MuonTrackCSCChamberResidual
0005  * 
0006  * Implementation of tracker muon chamber residuals for CSC
0007  * 
0008  * $Id: $
0009  */
0010 
0011 #include "Alignment/MuonAlignmentAlgorithms/interface/MuonChamberResidual.h"
0012 
0013 class MuonTrackCSCChamberResidual : public MuonChamberResidual {
0014 public:
0015   MuonTrackCSCChamberResidual(edm::ESHandle<GlobalTrackingGeometry> globalGeometry,
0016                               AlignableNavigator *navigator,
0017                               DetId chamberId,
0018                               AlignableDetOrUnitPtr chamberAlignable);
0019 
0020   // dummy method
0021   void addResidual(edm::ESHandle<Propagator> prop,
0022                    const TrajectoryStateOnSurface *tsos,
0023                    const TrackingRecHit *hit,
0024                    double,
0025                    double) override = 0;
0026 
0027   // for CSC, the residual is chamber local x, projected by the strip measurement direction
0028   // for CSC, the resslope is dresx/dz, or tan(phi_y)
0029   void setSegmentResidual(const reco::MuonChamberMatch *, const reco::MuonSegmentMatch *) override;
0030 };
0031 
0032 #endif  // Alignment_MuonAlignmentAlgorithms_MuonTrackCSCChamberResidual_H