File indexing completed on 2024-04-06 12:18:29
0001 #ifndef L1TTkEmFilter_h
0002 #define L1TTkEmFilter_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #include "HLTrigger/HLTcore/interface/HLTFilter.h"
0017 #include "DataFormats/L1TCorrelator/interface/TkEm.h"
0018 #include "DataFormats/L1TCorrelator/interface/TkEmFwd.h"
0019
0020
0021
0022
0023
0024 class L1TTkEmFilter : public HLTFilter {
0025 public:
0026 explicit L1TTkEmFilter(const edm::ParameterSet&);
0027 ~L1TTkEmFilter() override;
0028 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0029 bool hltFilter(edm::Event&,
0030 const edm::EventSetup&,
0031 trigger::TriggerFilterObjectWithRefs& filterproduct) const override;
0032
0033 private:
0034 edm::InputTag l1TkEmTag1_;
0035 edm::InputTag l1TkEmTag2_;
0036
0037 typedef std::vector<l1t::TkEm> TkEmCollection;
0038 edm::EDGetTokenT<TkEmCollection> tkEmToken1_;
0039 edm::EDGetTokenT<TkEmCollection> tkEmToken2_;
0040
0041 double min_Pt_;
0042 int min_N_;
0043 double min_AbsEta1_;
0044 double max_AbsEta1_;
0045 double min_AbsEta2_;
0046 double max_AbsEta2_;
0047 edm::ParameterSet scalings_;
0048 std::vector<double> barrelScalings_;
0049 std::vector<double> endcapScalings_;
0050 std::vector<double> etaBinsForIsolation_;
0051 std::vector<double> trkIsolation_;
0052 int quality1_;
0053 int quality2_;
0054 int qual1IsMask_;
0055 int qual2IsMask_;
0056 bool applyQual1_;
0057 bool applyQual2_;
0058
0059 double TkEmOfflineEt(double Et, double Eta) const;
0060 };
0061
0062 #endif