File indexing completed on 2024-04-06 12:18:38
0001 #ifndef HLTMuonTrimuonL3Filter_h
0002 #define HLTMuonTrimuonL3Filter_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #include "HLTrigger/HLTcore/interface/HLTFilter.h"
0015 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0016 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h"
0017 #include "DataFormats/BeamSpot/interface/BeamSpot.h"
0018 #include "DataFormats/MuonReco/interface/MuonTrackLinks.h"
0019 #include "DataFormats/MuonReco/interface/MuonFwd.h"
0020 #include "MagneticField/Engine/interface/MagneticField.h"
0021 #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h"
0022
0023 namespace edm {
0024 class ConfigurationDescriptions;
0025 }
0026
0027 class HLTMuonTrimuonL3Filter : public HLTFilter {
0028 public:
0029 explicit HLTMuonTrimuonL3Filter(const edm::ParameterSet&);
0030 ~HLTMuonTrimuonL3Filter() override;
0031 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0032 bool hltFilter(edm::Event&,
0033 const edm::EventSetup&,
0034 trigger::TriggerFilterObjectWithRefs& filterproduct) const override;
0035
0036 private:
0037 static bool triggeredByLevel2(const reco::TrackRef& track, std::vector<reco::RecoChargedCandidateRef>& vcands);
0038
0039 edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> const idealMagneticFieldRecordToken_;
0040 edm::InputTag beamspotTag_;
0041 edm::EDGetTokenT<reco::BeamSpot> beamspotToken_;
0042 edm::InputTag candTag_;
0043 edm::EDGetTokenT<reco::RecoChargedCandidateCollection> candToken_;
0044 edm::InputTag previousCandTag_;
0045 edm::EDGetTokenT<trigger::TriggerFilterObjectWithRefs>
0046 previousCandToken_;
0047
0048 bool fast_Accept_;
0049 double max_Eta_;
0050 int min_Nhits_;
0051 double max_Dr_;
0052 double max_Dz_;
0053 int chargeOpt_;
0054 double min_PtTriplet_;
0055 double min_PtMax_;
0056 double min_PtMin_;
0057 double min_InvMass_;
0058 double max_InvMass_;
0059 double min_Acop_;
0060 double max_Acop_;
0061 double min_PtBalance_;
0062 double max_PtBalance_;
0063 double nsigma_Pt_;
0064 double max_DCAMuMu_;
0065 double max_YTriplet_;
0066 const edm::InputTag theL3LinksLabel;
0067 const edm::EDGetTokenT<reco::MuonTrackLinksCollection> linkToken_;
0068 };
0069
0070 #endif