CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
OuterHitCompatibility.h
Go to the documentation of this file.
1 #ifndef RecoTracker_TkTrackingRegions_OuterHitCompatibility_H
2 #define RecoTracker_TkTrackingRegions_OuterHitCompatibility_H
3 
4 
12 #include "OuterHitPhiPrediction.h"
16 
19 
21 public:
22 
24  const OuterHitPhiPrediction & phiPrediction,
25  const HitRZCompatibility & rzCompatibility)
26  : thePhiPrediction(phiPrediction)
27  { theRZCompatibility = rzCompatibility.clone(); }
28 
30  : thePhiPrediction(ohc.thePhiPrediction)
31  { theRZCompatibility = ohc.theRZCompatibility->clone(); }
32 
34  { delete theRZCompatibility; }
35 
36 
37  bool operator() (const TrackingRecHit & hit) const;
38 
39  bool checkPhi(float phi, float r) const {
40  OuterHitPhiPrediction::Range hitPhiRange = thePhiPrediction(r);
41  PhiLess less;
42  bool phiOK = less(hitPhiRange.min(),phi) && less(phi,hitPhiRange.max());
43  return phiOK;
44  }
45 
47  return new OuterHitCompatibility(*this);
48  }
49 
50 protected:
53 };
54 #endif
T max() const
OuterHitCompatibility(const OuterHitPhiPrediction &phiPrediction, const HitRZCompatibility &rzCompatibility)
OuterHitCompatibility * clone() const
OuterHitCompatibility(const OuterHitCompatibility &ohc)
T min() const
OuterHitPhiPrediction thePhiPrediction
const HitRZCompatibility * theRZCompatibility
virtual HitRZCompatibility * clone() const =0
#define dso_internal
bool checkPhi(float phi, float r) const