CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ThirdHitCorrection.h
Go to the documentation of this file.
1 #ifndef RecoPixelVertexing_PixelTriplets_ThirdHitCorrection_H
2 #define RecoPixelVertexing_PixelTriplets_ThirdHitCorrection_H
3 
4 namespace edm {class EventSetup; }
6 
7 class DetLayer;
8 
12 
14 public:
15 
17 
19 
21  const edm::EventSetup &es,
22  float pt,
23  const DetLayer * layer,
24  const PixelRecoLineRZ & line,
25  const PixelRecoPointRZ & constraint, int ol,
26  bool useMultipleScattering,
27  bool useBendingCorrection = false)
28  {
29  init(es, pt, layer, line, constraint, ol, useMultipleScattering, useBendingCorrection);
30  }
31 
32  void init(
33  const edm::EventSetup &es,
34  float pt,
35  const DetLayer * layer,
36  const PixelRecoLineRZ & line,
37  const PixelRecoPointRZ & constraint, int ol,
38  bool useMultipleScattering,
39  bool useBendingCorrection = false);
40 
41 
42 
43  void correctRPhiRange( Range & range) const {
44  range.first -= theMultScattCorrRPhi;
45  range.second += theMultScattCorrRPhi;
46  }
47 
48  void correctRZRange( Range & range) const;
49 
50 private:
51  bool theBarrel;
52 
55 
58  float theMScoeff=0;
59 
61 
62 };
63 
64 #endif
ThirdHitCorrection(const edm::EventSetup &es, float pt, const DetLayer *layer, const PixelRecoLineRZ &line, const PixelRecoPointRZ &constraint, int ol, bool useMultipleScattering, bool useBendingCorrection=false)
PixelRecoLineRZ theLine
PixelRecoRange< float > Range
void correctRPhiRange(Range &range) const
pixelrecoutilities::LongitudinalBendingCorrection theBendingCorrection
void init(const edm::EventSetup &es, float pt, const DetLayer *layer, const PixelRecoLineRZ &line, const PixelRecoPointRZ &constraint, int ol, bool useMultipleScattering, bool useBendingCorrection=false)
void correctRZRange(Range &range) const