CMS 3D CMS Logo

PFCheckHitPattern.h
Go to the documentation of this file.
1 #ifndef PFCheckHitPattern_H
2 #define PFCheckHitPattern_H
3 
4 // standard EDAnalyser include files
5 #include <memory>
11 
18 
19 #define DEBUG_CHECKHITPATTERN
20 
21 class DetId;
22 
24 
29 /*
30  * Determine if a track has hits in front of its assumed production point.
31  * Also determine if it misses hits between its assumed production point and its innermost hit.
32  */
33 
35 public:
37 
39 
40  typedef std::pair<unsigned int, unsigned int> PFTrackHitInfo;
41  typedef std::pair<PFTrackHitInfo, PFTrackHitInfo> PFTrackHitFullInfo;
42 
47 
49  const TrackerGeometry* tkerGeom,
51  const TransientVertex& vert);
52 
54  void print(const reco::TrackBaseRef track) const;
55 
56 private:
58  void init(const TrackerTopology*, const TrackerGeometry*);
59 
62  typedef std::pair<uint32_t, uint32_t> DetInfo;
63 
65  static bool barrel(uint32_t subDet);
66 
67  void print(const reco::HitPattern::HitCategory, const reco::HitPattern& hp) const;
68 
69 private:
72 
75  typedef std::map<DetInfo, std::pair<double, double> > RZrangeMap;
77 };
78 
79 #endif
HLT_FULL_cff.track
track
Definition: HLT_FULL_cff.py:11713
funct::false
false
Definition: Factorize.h:29
TrackerGeometry.h
PFCheckHitPattern::print
void print(const reco::TrackBaseRef track) const
Print hit pattern on track.
Definition: PFCheckHitPattern.cc:156
PFCheckHitPattern::PFCheckHitPattern
PFCheckHitPattern()
Definition: PFCheckHitPattern.h:36
TrackerTopology
Definition: TrackerTopology.h:16
PFCheckHitPattern::~PFCheckHitPattern
~PFCheckHitPattern()
Definition: PFCheckHitPattern.h:38
TrackingGeometry.h
EDAnalyzer.h
DetId
Definition: DetId.h:17
MakerMacros.h
reco::HitPattern
Definition: HitPattern.h:147
Track.h
trackingPlots.hp
hp
Definition: trackingPlots.py:1230
TrackFwd.h
PFCheckHitPattern::analyze
PFTrackHitFullInfo analyze(const TrackerTopology *tkerTopo, const TrackerGeometry *tkerGeom, const reco::TrackBaseRef track, const TransientVertex &vert)
Definition: PFCheckHitPattern.cc:77
PFCheckHitPattern::init
void init(const TrackerTopology *, const TrackerGeometry *)
Create map indicating r/z values of all layers/disks.
Definition: PFCheckHitPattern.cc:20
PFCheckHitPattern
PFCheckHitPatter.
Definition: PFCheckHitPattern.h:34
PFCheckHitPattern::PFTrackHitInfo
std::pair< unsigned int, unsigned int > PFTrackHitInfo
Definition: PFCheckHitPattern.h:40
Event.h
PFCheckHitPattern::DetInfo
std::pair< uint32_t, uint32_t > DetInfo
Definition: PFCheckHitPattern.h:62
TransientVertex
Definition: TransientVertex.h:18
PFCheckHitPattern::RZrangeMap
std::map< DetInfo, std::pair< double, double > > RZrangeMap
Definition: PFCheckHitPattern.h:75
TransientVertex.h
reco::HitPattern::HitCategory
HitCategory
Definition: HitPattern.h:155
Frameworkfwd.h
EventSetup.h
edm::RefToBase< reco::Track >
PFCheckHitPattern::geomInitDone_
bool geomInitDone_
Note if geometry info is already initialized.
Definition: PFCheckHitPattern.h:71
ParameterSet.h
PFCheckHitPattern::PFTrackHitFullInfo
std::pair< PFTrackHitInfo, PFTrackHitInfo > PFTrackHitFullInfo
Definition: PFCheckHitPattern.h:41
PFCheckHitPattern::barrel
static bool barrel(uint32_t subDet)
Return a bool indicating if a given subdetector is in the barrel.
Definition: PFCheckHitPattern.cc:71
PFCheckHitPattern::rangeRorZ_
RZrangeMap rangeRorZ_
Definition: PFCheckHitPattern.h:76
TrackerGeometry
Definition: TrackerGeometry.h:14