134 {
135 if (!muon.isLoose()) {
136
137 return false;
138 }
139
140
141 if (muon.hasInDetTrackParticle()) {
144 if (!summary) return false;
145
148
149
150
151
154 nPixelHits += numberOfPixelDeadSensors;
155 if (nPixelHits < 2) return false;
156
157
160 nSCTHits += numberOfSCTDeadSensors;
161 if (nSCTHits < 6) return false;
162
163
164 int numberOfPixelHoles=muon.numberOfPixelHoles();
165 int numberOfSCTHoles=muon.numberOfSCTHoles();
166 if ( numberOfPixelHoles+numberOfSCTHoles > 2) return false;
167
168 float etaTrack = fabs(idTrack->
eta());
171
172 if (etaTrack < 1.9) {
173 if ((nTrtHits + nTrtOutliers) < 5 ) return false;
174 if (nTrtOutliers >= (0.9 * (nTrtHits + nTrtOutliers))) return false;
175 } else {
176 if ((nTrtHits + nTrtOutliers) > 5) {
177 if (nTrtOutliers >= (0.9 * (nTrtHits + nTrtOutliers))) return false;
178 }
179 }
180 return true;
181 }
182 return false;
183}
virtual double eta() const =0
pseudo rapidity
const TrackSummary * trackSummary() const
accessor function for TrackSummary.
A summary of the information contained by a track.
@ numberOfSCTHits
number of SCT holes
@ numberOfPixelHits
number of pixel layers on track with absence of hits
@ numberOfTRTOutliers
number of TRT holes
@ numberOfTRTHits
number of TRT outliers
@ numberOfSCTDeadSensors
number of TRT hits
@ numberOfPixelDeadSensors
number of pixel hits with broad errors (width/sqrt(12))