Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:26:58

0001 #ifndef RecoMuon_HLTMuonL2SelectorForL3IO_HLTMuonL2SelectorForL3IO_H
0002 #define RecoMuon_HLTMuonL2SelectorForL3IO_HLTMuonL2SelectorForL3IO_H
0003 
0004 /**  \class HLTMuonL2SelectorForL3IO
0005  * 
0006  *   L2 muon selector for L3 IO:
0007  *   finds L2 muons not previous converted into (good) L3 muons 
0008  *
0009  *   \author  Benjamin Radburn-Smith, Santiago Folgueras - Purdue University
0010  */
0011 
0012 #include "FWCore/Framework/interface/stream/EDProducer.h"
0013 #include "DataFormats/TrackReco/interface/Track.h"
0014 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0015 #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h"
0016 #include "DataFormats/MuonReco/interface/MuonTrackLinks.h"
0017 #include "DataFormats/MuonReco/interface/MuonFwd.h"
0018 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidate.h"
0019 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h"
0020 
0021 namespace edm {
0022   class ParameterSet;
0023   class Event;
0024   class EventSetup;
0025 }  // namespace edm
0026 
0027 class HLTMuonL2SelectorForL3IO : public edm::stream::EDProducer<> {
0028 public:
0029   /// constructor with config
0030   HLTMuonL2SelectorForL3IO(const edm::ParameterSet&);
0031 
0032   /// destructor
0033   ~HLTMuonL2SelectorForL3IO() override;
0034 
0035   /// default values
0036   static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0037 
0038   /// select muons
0039   void produce(edm::Event&, const edm::EventSetup&) override;
0040 
0041 private:
0042   const edm::EDGetTokenT<reco::TrackCollection> l2Src_;
0043   const edm::EDGetTokenT<reco::RecoChargedCandidateCollection> l3OISrc_;
0044   const edm::EDGetTokenT<reco::MuonTrackLinksCollection> l3linkToken_;
0045   const bool applyL3Filters_;
0046   const double max_NormalizedChi2_, max_PtDifference_;
0047   const int min_Nhits_, min_NmuonHits_;
0048 };
0049 
0050 #endif