Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:28:43

0001 #include "RecoTracker/SiTrackerMRHTools/interface/GenericProjectedRecHit2D.h"
0002 #include "RecoTracker/TransientTrackingRecHit/interface/TSiPixelRecHit.h"
0003 #include "RecoTracker/TransientTrackingRecHit/interface/TSiStripMatchedRecHit.h"
0004 #include "RecoTracker/TransientTrackingRecHit/interface/TSiStripRecHit2DLocalPos.h"
0005 #include "RecoTracker/TransientTrackingRecHit/interface/ProjectedRecHit2D.h"
0006 #include "FWCore/Utilities/interface/Exception.h"
0007 
0008 GenericProjectedRecHit2D::GenericProjectedRecHit2D(const LocalPoint& pos,
0009                                                    const LocalError& err,
0010                                                    const GeomDet* det,
0011                                                    const GeomDet* originalDet,
0012                                                    const TransientTrackingRecHit::ConstRecHitPointer originalHit,
0013                                                    const TrackingRecHitPropagator* propagator)
0014     : TrackingRecHit(*det)  //, originalHit->weight(), originalHit->getAnnealingFactor())
0015 {
0016   theOriginalDet = originalDet;
0017   thePropagator = propagator;
0018   theOriginalTransientHit = originalHit;
0019   theLp = pos;
0020   theLe = err;
0021   theProjectionMatrix = originalHit->projectionMatrix();
0022   theDimension = originalHit->dimension();
0023   //theOriginalHit = originalTransientHit.hit()->clone();
0024 }
0025 
0026 AlgebraicVector GenericProjectedRecHit2D::parameters() const {
0027   AlgebraicVector result(2);
0028   result[0] = theLp.x();
0029   result[1] = theLp.y();
0030   return result;
0031 }
0032 
0033 TransientTrackingRecHit::RecHitPointer GenericProjectedRecHit2D::clone(
0034     const TrajectoryStateOnSurface& ts, const TransientTrackingRecHitBuilder* builder) const {
0035   return thePropagator->project<GenericProjectedRecHit2D>(theOriginalTransientHit, *det(), ts, builder);
0036 }