CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/FastSimulation/TrackingRecHitProducer/interface/GSRecHitMatcher.h

Go to the documentation of this file.
00001 #ifndef FastSimulation_TrackingRecHitProducer_GSRecHitMatcher_h
00002 #define FastSimulation_TrackingRecHitProducer_GSRecHitMatcher_h
00003 
00004 #include "DataFormats/TrackerRecHit2D/interface/SiTrackerGSRecHit2DCollection.h"
00005 #include "DataFormats/TrackerRecHit2D/interface/SiTrackerGSMatchedRecHit2DCollection.h"
00006 #include "DataFormats/GeometryVector/interface/LocalVector.h"
00007 
00008 class GluedGeomDet;
00009 class GeomDetUnit;
00010 class GeomDet;
00011 
00012 class GSRecHitMatcher {
00013  public:
00014 
00015   typedef std::pair<LocalPoint,LocalPoint>                   StripPosition; 
00016 
00017   GSRecHitMatcher() {}
00018   ~GSRecHitMatcher() {}
00019 
00020   SiTrackerGSMatchedRecHit2D * match( const SiTrackerGSRecHit2D *monoRH,
00021                                       const SiTrackerGSRecHit2D *stereoRH,
00022                                       const GluedGeomDet* gluedDet,
00023                                       LocalVector& trackdirection) const;
00024   
00025   
00026   StripPosition project(const GeomDetUnit *det,
00027                         const GluedGeomDet* glueddet,
00028                         const StripPosition& strip,
00029                         const LocalVector& trackdirection) const;
00030   
00031   SiTrackerGSMatchedRecHit2D * projectOnly( const SiTrackerGSRecHit2D *monoRH,
00032                                             const GeomDet * monoDet,
00033                                             const GluedGeomDet* gluedDet,
00034                                             LocalVector& ldir) const;
00035   
00036 };
00037 
00038 #endif