23 return selectedSegments;
33 double chi2Ndof =
segment.chi2();
39 if (chi2Ndof >
sel.maxChi2Ndof) {
return false; }
41 if (segmentSelection) {
45 if (segmentSelection->
singleML &&
summary.nmdtHitsPerMl(1) > 0 &&
summary.nmdtHitsPerMl(2) > 0)
return false;
47 if (segmentSelection->
twoML && (
summary.nmdtHitsPerMl(1) == 0 ||
summary.nmdtHitsPerMl(2) == 0))
return false;
50 if (adcGoodHitFraction < segmentSelection->minAdcGoodFraction)
return false;
60 if (
summary.nmdtHits <
sel.nminMdtHits)
return false;
62 if (
summary.nphiTrigHits() <
sel.nminPhiTrigHits)
return false;
64 if (
summary.netaTrigHits() <
sel.nminEtaTrigHits)
return false;
66 if (
summary.noutliers >
sel.nmaxOutliers)
return false;
68 if (
summary.npseudo >
sel.nmaxPseudo)
return false;
70 if (
summary.nmdtHitsPerMl(1) <
sel.nminMdtMl1)
return false;
71 if (
summary.nmdtHitsPerMl(2) <
sel.nminMdtMl2)
return false;
72 unsigned int nmdtCh =
summary.nmdtCh();
73 if (nmdtCh <
sel.nminMdtCh)
return false;
74 if (nmdtCh >
sel.nmaxMdtCh)
return false;
87 return selectedTracks;
98 double chi2Ndof =
track.chi2();
101 if (chi2Ndof >
sel.maxChi2Ndof)
return false;
104 if (trackSelection) {
107 if (!
summary.hasBarrel)
return false;
116 if (!
summary.hasEndcapA)
return false;
125 if (!
summary.hasEndcapC)
return false;
132 if (std::abs(
track.d0()) > trackSelection->
maxr0)
return false;
133 if (std::abs(
track.z0ip()) > trackSelection->
maxz0)
return false;