Back to home page

Project CMSSW displayed by LXR

 
 

    


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

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