100 throw cms::Exception(
"CheckHitPattern::operator() called before CheckHitPattern::init");
108 bool trkGoesInsideOut =
109 fabs(reco::deltaPhi<const GlobalVector, const GlobalPoint>(p3_trk, vert.
position())) < 0.5 *
M_PI;
111 LogDebug(
"CHP") <<
"TRACK: in-->out ? " << trkGoesInsideOut <<
" dxy=" << track.
dxy() <<
" sz=" << track.
dz()
122 unsigned int nHitBefore = 0;
128 DetInfo detInfo(subDet, layer);
131 if (this->
barrel(subDet)) {
144 unsigned int nMissHitAfter = 0;
151 DetInfo detInfo(subDet, layer);
154 if (this->
barrel(subDet)) {
157 if (vert.
position().
perp() < minRZ || !trkGoesInsideOut)
167 result.hitsInFrontOfVert = nHitBefore;
168 result.missHitsAfterVert = nMissHitAfter;
static uint32_t getLayer(uint16_t pattern)
std::pair< uint32_t, uint32_t > DetInfo
reco::TransientTrack build(const reco::Track *p) const
static bool missingHitFilter(uint16_t pattern)
GlobalPoint position() const
int numberOfValidStripTOBHits() const
static bool validHitFilter(uint16_t pattern)
U second(std::pair< T, U > const &p)
double eta() const
pseudorapidity of momentum vector
int numberOfAllHits(HitCategory category) const
static uint32_t getSubStructure(uint16_t pattern)
double dz() const
dz parameter (= dsz/cos(lambda)). This is the track z0 w.r.t (0,0,0) only if the refPoint is close to...
static bool trackerHitFilter(uint16_t pattern)
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
TrajectoryStateClosestToPoint trajectoryStateClosestToPoint(const GlobalPoint &point) const
int numberOfValidStripTIBHits() const
int numberOfValidPixelHits() const
edm::ESHandle< TransientTrackBuilder > trkTool_
static bool barrel(uint32_t subDet)
uint16_t getHitPattern(HitCategory category, int position) const
double dxy() const
dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close t...