CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CalibrationTrackSelector.h
Go to the documentation of this file.
1 #ifndef Calibration_TkAlCaRecoProducers_CalibrationTrackSelector_h
2 #define Calibration_TkAlCaRecoProducers_CalibrationTrackSelector_h
3 
6 #include <vector>
7 
8 namespace edm {
9  class Event;
10  class ParameterSet;
11 }
12 
13 class TrackingRecHit;
14 
16 {
17 
18  public:
19 
20  typedef std::vector<const reco::Track*> Tracks;
21 
24 
27 
29  Tracks select(const Tracks& tracks, const edm::Event& evt) const;
30 
31  private:
32 
34  Tracks basicCuts(const Tracks& tracks, const edm::Event& evt) const;
36  bool detailedHitsCheck(const reco::Track* track, const edm::Event& evt) const;
37  bool isHit2D(const TrackingRecHit &hit) const;
38  bool isOkCharge(const TrackingRecHit* therechit) const;
39  bool isIsolated(const TrackingRecHit* therechit, const edm::Event& evt) const;
40 
43 
45  struct ComparePt {
46  bool operator()( const reco::Track* t1, const reco::Track* t2 ) const {
47  return t1->pt()> t2->pt();
48  }
49  };
51 
55  const bool multiplicityOnInput_;
60  const unsigned int nHitMin2D_;
62 
63 };
64 
65 #endif
66 
const edm::InputTag matchedrecHitsTag_
std::vector< const reco::Track * > Tracks
Tracks select(const Tracks &tracks, const edm::Event &evt) const
select tracks
bool isIsolated(const TrackingRecHit *therechit, const edm::Event &evt) const
auto const T2 &decltype(t1.eta()) t2
Definition: deltaR.h:18
bool detailedHitsCheck(const reco::Track *track, const edm::Event &evt) const
checking hit requirements beyond simple number of valid hits
double pt() const
track transverse momentum
Definition: TrackBase.h:129
const edm::InputTag rphirecHitsTag_
bool isOkCharge(const TrackingRecHit *therechit) const
const double ptMin_
if true, cut min/maxMultiplicity on input instead of on final result
compare two tracks in pt (used by theNHighestPtTracks)
tuple tracks
Definition: testEve_cfg.py:39
bool operator()(const reco::Track *t1, const reco::Track *t2) const
Tracks theNHighestPtTracks(const Tracks &tracks) const
filter the n highest pt tracks
bool isHit2D(const TrackingRecHit &hit) const
CalibrationTrackSelector(const edm::ParameterSet &cfg)
constructor
Tracks basicCuts(const Tracks &tracks, const edm::Event &evt) const
apply basic cuts on pt,eta,phi,nhit