Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:18:35

0001 #ifndef HLTTrigger_HLTL1MuonNoL2Selector_HLTL1MuonNoL2Selector_H
0002 #define HLTTrigger_HLTL1MuonNoL2Selector_HLTL1MuonNoL2Selector_H
0003 
0004 //-------------------------------------------------
0005 //
0006 /**  \class HLTL1MuonNoL2Selector
0007  * 
0008  *   HLTL1MuonNoL2Selector:
0009  *   Simple selector to output a subset of L1 muon collection 
0010  *   
0011  *   based on RecoMuon/L2MuonSeedGenerator
0012  *
0013  *
0014  *   \author  S. Folgueras
0015  */
0016 //
0017 //--------------------------------------------------
0018 
0019 #include "FWCore/Framework/interface/global/EDProducer.h"
0020 #include "FWCore/Utilities/interface/InputTag.h"
0021 
0022 // Data Formats
0023 #include "DataFormats/TrajectoryState/interface/PTrajectoryStateOnDet.h"
0024 #include "DataFormats/MuonDetId/interface/DTChamberId.h"
0025 #include "DataFormats/MuonDetId/interface/CSCDetId.h"
0026 #include "DataFormats/L1Trigger/interface/Muon.h"
0027 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidate.h"
0028 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h"
0029 #include "DataFormats/Common/interface/Handle.h"
0030 #include "DataFormats/GeometrySurface/interface/BoundCylinder.h"
0031 #include "DataFormats/Math/interface/deltaR.h"
0032 #include "HLTrigger/HLTcore/interface/HLTFilter.h"
0033 #include "HLTMuonL2ToL1TMap.h"
0034 
0035 namespace edm {
0036   class ParameterSet;
0037   class Event;
0038   class EventSetup;
0039 }  // namespace edm
0040 
0041 class HLTL1MuonNoL2Selector : public edm::global::EDProducer<> {
0042 public:
0043   /// Constructor
0044   explicit HLTL1MuonNoL2Selector(const edm::ParameterSet&);
0045 
0046   /// Destructor
0047   ~HLTL1MuonNoL2Selector() override;
0048 
0049   static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0050   void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override;
0051 
0052 private:
0053   edm::InputTag theL1Source_;
0054   const double theL1MinPt_;
0055   const double theL1MaxEta_;
0056   const unsigned theL1MinQuality_;
0057   bool centralBxOnly_;
0058 
0059   edm::EDGetTokenT<l1t::MuonBxCollection> muCollToken_;
0060   edm::InputTag theL2CandTag_;
0061   edm::EDGetTokenT<reco::RecoChargedCandidateCollection> theL2CandToken_;
0062   edm::InputTag seedMapTag_;
0063   edm::EDGetTokenT<SeedMap> seedMapToken_;
0064 };
0065 
0066 #endif