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 TransientTrackingRecHit * hit) const;
38  bool operator() (const TrackingRecHit* hit, const edm::EventSetup& iSetup) const;
39 
40  bool checkPhi(float phi, float r) const {
41  OuterHitPhiPrediction::Range hitPhiRange = thePhiPrediction(r);
42  PhiLess less;
43  bool phiOK = less(hitPhiRange.min(),phi) && less(phi,hitPhiRange.max());
44  return phiOK;
45  }
46 
48  return new OuterHitCompatibility(*this);
49  }
50 
51 protected:
54 };
55 #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
#define dso_internal
Definition: Visibility.h:13
virtual HitRZCompatibility * clone() const =0
bool checkPhi(float phi, float r) const
Definition: DDAxes.h:10