CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ValidHitPairFilter.h
Go to the documentation of this file.
1 #ifndef _ValidHitPairFilter_h_
2 #define _ValidHitPairFilter_h_
3 
4 #include <vector>
5 
7 
8 namespace edm { class ParameterSet; class EventSetup; }
9 class TrackingRecHit;
10 class Track;
12 class TrackerGeometry;
14 class MagneticField;
15 class Propagator;
16 class DetLayer;
17 class GeomDet;
18 
20 {
21 public:
23  virtual ~ValidHitPairFilter();
24  virtual bool operator()(const reco::Track * track,
25  std::vector<const TrackingRecHit *> recHits) const;
26 
27 private:
28  int getLayer(const TrackingRecHit & recHit) const;
29  std::vector<int> getMissingLayers(int a, int b) const;
30  FreeTrajectoryState getTrajectory(const reco::Track & track) const;
31  std::vector<const GeomDet *> getCloseDets
32  (int il, float rz, const std::vector<float>& rzB,
33  float ph, const std::vector<float>& phB) const;
34 
39 
40  const std::vector<DetLayer *> detLayers;
41  std::vector<float> rzBounds[7];
42  std::vector<float> phBounds[7];
43 };
44 
45 #endif
int getLayer(const TrackingRecHit &recHit) const
const Propagator * thePropagator
ValidHitPairFilter(const edm::ParameterSet &ps, const edm::EventSetup &es)
const TrackerGeometry * theTracker
virtual bool operator()(const reco::Track *track, std::vector< const TrackingRecHit * > recHits) const
std::vector< float > phBounds[7]
const GeometricSearchTracker * theGSTracker
std::vector< int > getMissingLayers(int a, int b) const
const std::vector< DetLayer * > detLayers
double b
Definition: hdecay.h:120
std::vector< float > rzBounds[7]
double a
Definition: hdecay.h:121
const MagneticField * theMagneticField
FreeTrajectoryState getTrajectory(const reco::Track &track) const
std::vector< const GeomDet * > getCloseDets(int il, float rz, const std::vector< float > &rzB, float ph, const std::vector< float > &phB) const