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