CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CosmicTrackSelector.h
Go to the documentation of this file.
1 #ifndef RecoAlgos_CosmicTrackSelector_h
2 #define RecoAlgos_CosmicTrackSelector_h
3 
15 #include <utility>
16 #include <vector>
17 #include <memory>
18 #include <algorithm>
19 #include <map>
25 
33 
34 
35 namespace reco { namespace modules {
36 
38  private:
39  public:
40  // constructor
41  explicit CosmicTrackSelector( const edm::ParameterSet & cfg ) ;
42  // destructor
43  virtual ~CosmicTrackSelector() ;
44 
45  private:
47  // process one event
48  void produce( edm::Event& evt, const edm::EventSetup& es ) ;
49  // return class, or -1 if rejected
50  bool select (const reco::BeamSpot &vertexBeamSpot, const reco::Track &tk);
51  // source collection label
54  // copy only the tracks, not extras and rechits (for AOD)
56  // copy also trajectories and trajectory->track associations
58 
59  // save all the tracks
61  // do I have to set a quality bit?
64 
65  // parameters for adapted optimal cuts on chi2 and primary vertex compatibility
66  std::vector<double> res_par_;
67  double chi2n_par_;
68 
69  // Impact parameter absolute cuts
70  double max_d0_;
71  double max_z0_;
72  // Trackk parameter cuts
73  double min_pt_;
74  double max_eta_;
75  // Cut on number of valid hits
76  uint32_t min_nHit_;
77  // Cut on number of valid Pixel hits
78  uint32_t min_nPixelHit_;
79  // Cuts on numbers of layers with hits/3D hits/lost hits.
80  uint32_t min_layers_;
81  uint32_t min_3Dlayers_;
82  uint32_t max_lostLayers_;
83 
84  // storage
85  std::auto_ptr<reco::TrackCollection> selTracks_;
86  std::auto_ptr<reco::TrackExtraCollection> selTrackExtras_;
87  std::auto_ptr< TrackingRecHitCollection> selHits_;
88  std::auto_ptr< std::vector<Trajectory> > selTrajs_;
89  std::auto_ptr< std::vector<const Trajectory *> > selTrajPtrs_;
90  std::auto_ptr< TrajTrackAssociationCollection > selTTAss_;
95  std::vector<reco::TrackRef> trackRefs_;
96 
97  };
98 
99  } }
100 
101 #endif
std::auto_ptr< reco::TrackExtraCollection > selTrackExtras_
TrackQuality
track quality
Definition: TrackBase.h:95
edm::RefProd< std::vector< Trajectory > > rTrajectories_
std::auto_ptr< std::vector< Trajectory > > selTrajs_
reco::TrackExtraRefProd rTrackExtras_
std::vector< reco::TrackRef > trackRefs_
TrackBase::TrackQuality qualityToSet_
std::auto_ptr< TrajTrackAssociationCollection > selTTAss_
std::auto_ptr< std::vector< const Trajectory * > > selTrajPtrs_
std::auto_ptr< TrackingRecHitCollection > selHits_
void produce(edm::Event &evt, const edm::EventSetup &es)
std::auto_ptr< reco::TrackCollection > selTracks_
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:13
bool select(const reco::BeamSpot &vertexBeamSpot, const reco::Track &tk)
CosmicTrackSelector(const edm::ParameterSet &cfg)