CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/RecoHI/HiMuonAlgos/interface/HICSeedMeasurementEstimator.h

Go to the documentation of this file.
00001 #ifndef HIC_SEED_MeasurementEstimator_HIC_H 
00002 #define HIC_SEED_MeasurementEstimator_HIC_H 
00003 
00004 #include "TrackingTools/PatternTools/interface/MeasurementEstimator.h"
00005 #include "TrackingTools/DetLayers/interface/DetLayer.h"
00006 
00007 //#define HICMEASUREMENT_DEBUG
00008 namespace cms {
00009 class HICSeedMeasurementEstimator:public MeasurementEstimator {
00010 public:
00011 
00012 explicit HICSeedMeasurementEstimator(bool& trust,int nsig):trtrue(trust), theNSigma(nsig) {}
00013 
00014 virtual MeasurementEstimator::HitReturnType  estimate( const TrajectoryStateOnSurface& ts, 
00015                                      const TransientTrackingRecHit& hit) const;
00016                                      
00017 virtual MeasurementEstimator::SurfaceReturnType estimate( const TrajectoryStateOnSurface& ts, 
00018                             const BoundPlane& plane) const;
00019                             
00020 virtual MeasurementEstimator::Local2DVector 
00021   maximalLocalDisplacement( const TrajectoryStateOnSurface& ts,
00022                             const BoundPlane& plane) const;
00023 
00024 double nSigmaCut() const {return theNSigma;}
00025 
00026 void set(double& phi, double& z) {thePhi=phi;theZ=z;}
00027 
00028 double getZ() {return theZ;}
00029 
00030 double getPhi() {return thePhi;}
00031 
00032 HICSeedMeasurementEstimator* clone() const {
00033     return new HICSeedMeasurementEstimator(*this);
00034 }
00035                  
00036 private:
00037 
00038 double thePhi;
00039 double theZ;
00040 bool   trtrue;
00041 int    theNSigma;
00042                                                    
00043 };
00044 }
00045 #endif // HIC_SEED_MeasurementEstimator_HIC_H