File indexing completed on 2024-04-06 12:18:37
0001 #ifndef HLTMuonL1TtoL3TkPreFilter_h
0002 #define HLTMuonL1TtoL3TkPreFilter_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #include "HLTrigger/HLTcore/interface/HLTFilter.h"
0015 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h"
0016 #include "DataFormats/TrackReco/interface/Track.h"
0017 #include "DataFormats/MuonReco/interface/MuonTrackLinks.h"
0018 #include "DataFormats/MuonReco/interface/MuonFwd.h"
0019 #include "DataFormats/MuonSeed/interface/L3MuonTrajectorySeedCollection.h"
0020 #include "DataFormats/L1Trigger/interface/Muon.h"
0021
0022 namespace edm {
0023 class ConfigurationDescriptions;
0024 }
0025
0026 class HLTMuonL1TtoL3TkPreFilter : public HLTFilter {
0027 public:
0028 explicit HLTMuonL1TtoL3TkPreFilter(const edm::ParameterSet&);
0029 ~HLTMuonL1TtoL3TkPreFilter() override;
0030 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0031 bool hltFilter(edm::Event&,
0032 const edm::EventSetup&,
0033 trigger::TriggerFilterObjectWithRefs& filterproduct) const override;
0034
0035 private:
0036 bool triggeredAtL1(const l1t::MuonRef& l1mu, std::vector<l1t::MuonRef>& vcands) const;
0037
0038 edm::InputTag beamspotTag_;
0039 edm::EDGetTokenT<reco::BeamSpot> beamspotToken_;
0040 edm::InputTag candTag_;
0041 edm::EDGetTokenT<reco::RecoChargedCandidateCollection> candToken_;
0042 edm::InputTag previousCandTag_;
0043 edm::EDGetTokenT<trigger::TriggerFilterObjectWithRefs>
0044 previousCandToken_;
0045 int min_N_;
0046 double max_Eta_;
0047 int min_Nhits_;
0048 double max_Dr_;
0049 double max_Dz_;
0050 double min_Pt_;
0051 double nsigma_Pt_;
0052 };
0053
0054 #endif