CMS 3D CMS Logo

ConversionTrackFinder.h
Go to the documentation of this file.
1 #ifndef RecoEGAMMA_ConversionTrack_ConversionTrackFinder_h
2 #define RecoEGAMMA_ConversionTrack_ConversionTrackFinder_h
3 
15 //
18 //
20 
23 
24 // C/C++ headers
25 #include <string>
26 #include <vector>
27 
29 class TrackerGeometry;
32 
34 public:
36  const BaseCkfTrajectoryBuilder* trajectoryBuilder,
38 
39  virtual ~ConversionTrackFinder();
40 
41  virtual std::vector<Trajectory> tracks(const TrajectorySeedCollection& seeds,
42  TrackCandidateCollection& candidate) const = 0;
43 
45  void setEventSetup(const edm::EventSetup& es);
46 
47 protected:
49 
53 
54  std::unique_ptr<TransientInitialStateEstimator> theInitialState_;
57 
59 
63 
65 
67  typedef int result_type;
68  result_type operator()(const Trajectory& t) const { return t.foundHits(); }
69  result_type operator()(const Trajectory* t) const { return t->foundHits(); }
70  };
71 
72  struct ExtractChi2 {
73  typedef float result_type;
74  result_type operator()(const Trajectory& t) const { return t.chiSquared(); }
75  result_type operator()(const Trajectory* t) const { return t->chiSquared(); }
76  };
77 };
78 
79 #endif
edm::ESGetToken< Propagator, TrackerDigiGeometryRecord > thePropagatorToken_
result_type operator()(const Trajectory *t) const
edm::ESHandle< Propagator > thePropagator_
result_type operator()(const Trajectory &t) const
std::vector< TrackCandidate > TrackCandidateCollection
std::unique_ptr< TransientInitialStateEstimator > theInitialState_
Definition: config.py:1
std::vector< TrajectorySeed > TrajectorySeedCollection
virtual std::vector< Trajectory > tracks(const TrajectorySeedCollection &seeds, TrackCandidateCollection &candidate) const =0
std::string theMeasurementTrackerName_
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > theTrackerGeomToken_
const MagneticField * theMF_
result_type operator()(const Trajectory &t) const
result_type operator()(const Trajectory *t) const
edm::ESGetToken< MeasurementTracker, CkfComponentsRecord > theMeasurementTrackerToken_
const MeasurementTracker * theMeasurementTracker_
const TrackerGeometry * theTrackerGeom_
void setEventSetup(const edm::EventSetup &es)
Initialize EventSetup objects at each event.
const BaseCkfTrajectoryBuilder * theCkfTrajectoryBuilder_
ConversionTrackFinder(const edm::ParameterSet &config, const BaseCkfTrajectoryBuilder *trajectoryBuilder, edm::ConsumesCollector iC)