CMS 3D CMS Logo

OuterEstimator.h
Go to the documentation of this file.
1 #ifndef OuterEstimator_H
2 #define OuterEstimator_H
3 
14 
15 #include "OuterDetCompatibility.h"
16 #include "OuterHitCompatibility.h"
17 
19 
21 
22 template <typename Algo>
24 public:
26 
27  OuterEstimator(const OuterDetCompatibility& detCompatibility,
28  const OuterHitCompat& hitCompatibility,
29  const edm::EventSetup& iSetup)
30  : theDetCompatibility(detCompatibility), theHitCompatibility(hitCompatibility) {}
31 
32  ~OuterEstimator() override {}
33 
34  std::pair<bool, double> estimate(const TrajectoryStateOnSurface& ts, const TrackingRecHit& hit) const override {
35  return theHitCompatibility(hit) ? std::make_pair(true, 1.) : std::make_pair(false, 0.);
36  }
37 
38  bool estimate(const TrajectoryStateOnSurface& ts, const BoundPlane& plane) const override {
39  return theDetCompatibility(plane);
40  }
41 
42  GlobalPoint center() { return theDetCompatibility.center(); }
43 
44  OuterEstimator* clone() const override { return new OuterEstimator(*this); }
45 
47  const BoundPlane& plane) const override {
48  return theDetCompatibility.maximalLocalDisplacement(ts.globalPosition(), plane);
49  }
50 
51  const OuterDetCompatibility& detCompatibility() const { return theDetCompatibility; }
52  const OuterHitCompat& hitCompatibility() const { return theHitCompatibility; }
53 
54 private:
57 };
58 #endif
MeasurementEstimator
Definition: MeasurementEstimator.h:19
TrajectoryStateOnSurface.h
Visibility.h
OuterEstimator::clone
OuterEstimator * clone() const override
Definition: OuterEstimator.h:44
TrajectoryStateOnSurface::globalPosition
GlobalPoint globalPosition() const
Definition: TrajectoryStateOnSurface.h:65
TransientTrackingRecHit.h
OuterEstimator::~OuterEstimator
~OuterEstimator() override
Definition: OuterEstimator.h:32
OuterDetCompatibility.h
OuterEstimator::detCompatibility
const OuterDetCompatibility & detCompatibility() const
Definition: OuterEstimator.h:51
OuterEstimator
Definition: OuterEstimator.h:23
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
TrackingRecHit.h
OuterEstimator::theDetCompatibility
OuterDetCompatibility theDetCompatibility
Definition: OuterEstimator.h:55
MeasurementEstimator.h
Vector2DBase
Definition: Vector2DBase.h:8
OuterEstimator::hitCompatibility
const OuterHitCompat & hitCompatibility() const
Definition: OuterEstimator.h:52
Point3DBase< float, GlobalTag >
OuterEstimator::OuterEstimator
OuterEstimator(const OuterDetCompatibility &detCompatibility, const OuterHitCompat &hitCompatibility, const edm::EventSetup &iSetup)
Definition: OuterEstimator.h:27
OuterHitCompatibility
Definition: OuterHitCompatibility.h:21
dso_internal
#define dso_internal
Definition: Visibility.h:13
OuterEstimator::estimate
std::pair< bool, double > estimate(const TrajectoryStateOnSurface &ts, const TrackingRecHit &hit) const override
Definition: OuterEstimator.h:34
edm::EventSetup
Definition: EventSetup.h:57
OuterEstimator::maximalLocalDisplacement
MeasurementEstimator::Local2DVector maximalLocalDisplacement(const TrajectoryStateOnSurface &ts, const BoundPlane &plane) const override
Definition: OuterEstimator.h:46
OuterDetCompatibility
Definition: OuterDetCompatibility.h:16
OuterEstimator::theHitCompatibility
OuterHitCompat theHitCompatibility
Definition: OuterEstimator.h:56
OuterHitCompatibility.h
TrackingRecHit
Definition: TrackingRecHit.h:21
BoundPlane
EventSetup.h
OuterEstimator::estimate
bool estimate(const TrajectoryStateOnSurface &ts, const BoundPlane &plane) const override
Definition: OuterEstimator.h:38
BoundPlane.h
OuterEstimator::center
GlobalPoint center()
Definition: OuterEstimator.h:42
hit
Definition: SiStripHitEffFromCalibTree.cc:88