1 #ifndef Alignment_CommonAlignmentAlgorithm_AlignmentTrackSelector_h
2 #define Alignment_CommonAlignmentAlgorithm_AlignmentTrackSelector_h
15 class SiStripRecHit1D;
16 class SiStripRecHit2D;
23 typedef std::vector<const reco::Track*>
Tracks;
60 return t1->
pt()> t2->
pt();
95 std::vector<reco::TrackBase::TrackAlgorithm>
trkSteps_;
const int minHitsinFPIXminus_
const bool applyNHighestPt_
std::vector< double > RorZofFirstHitMax_
const int minHitsinTECplus_
const double nLostHitMax_
const bool applyIsolation_
const int minHitsinFPIXplus_
Tracks basicCuts(const Tracks &tracks, const edm::Event &evt, const edm::EventSetup &eSetup) const
apply basic cuts on pt,eta,phi,nhit
bool isIsolated(const TrackingRecHit *therechit, const edm::Event &evt) const
const int minHitsinTIDplus_
const double maxHitDiffEndcaps_
const double minHitIsolation_
std::vector< const reco::Track * > Tracks
Tracks checkPrescaledHits(const Tracks &tracks, const edm::Event &evt) const
~AlignmentTrackSelector()
destructor
std::vector< reco::TrackBase::TrackAlgorithm > trkSteps_
Tracks theNHighestPtTracks(const Tracks &tracks) const
filter the n highest pt tracks
std::vector< reco::TrackBase::TrackQuality > trkQualities_
const unsigned int nHitMin2D_
bool isOkChargeStripHit(const SiStripRecHit1D &siStripRecHit1D) const
const bool applyMultiplicityFilter_
const bool countStereoHitAs2D_
AlignmentTrackSelector(const edm::ParameterSet &cfg)
constructor
bool isHit2D(const TrackingRecHit &hit) const
const int minHitsinENDCAPplus_
const bool seedOnlyFromAbove_
auto const T2 &decltype(t1.eta()) t2
double pt() const
track transverse momentum
const int minHitsinTECminus_
const int minHitsinENDCAPminus_
const double minHitChargeStrip_
const int minMultiplicity_
const edm::InputTag matchedrecHitsTag_
std::vector< double > RorZofLastHitMin_
bool isOkTrkQuality(const reco::Track *track) const
std::vector< double > RorZofFirstHitMin_
const double ptMin_
if true, cut min/maxMultiplicity on input instead of on final result
const int minHitsinENDCAP_
const int minPrescaledHits_
const edm::InputTag clusterValueMapTag_
bool detailedHitsCheck(const reco::Track *track, const edm::Event &evt, const edm::EventSetup &eSetup) const
checking hit requirements beyond simple number of valid hits
const bool applyBasicCuts_
Tracks select(const Tracks &tracks, const edm::Event &evt, const edm::EventSetup &eSetup) const
select tracks
bool applyTrkQualityCheck_
const edm::InputTag rphirecHitsTag_
bool isOkCharge(const TrackingRecHit *therechit) const
if valid, check for minimum charge (currently only in strip), if invalid give true ...
const int maxMultiplicity_
std::vector< double > RorZofLastHitMax_
const int minHitsinTIDminus_
bool operator()(const reco::Track *t1, const reco::Track *t2) const
compare two tracks in pt (used by theNHighestPtTracks)
const bool applyPrescaledHitsFilter_
const bool multiplicityOnInput_
bool useThisFilter()
returns if any of the Filters is used.