File indexing completed on 2024-04-06 12:18:20
0001 #ifndef HLTEgammaGenericQuadraticFilter_h
0002 #define HLTEgammaGenericQuadraticFilter_h
0003
0004
0005
0006
0007
0008
0009
0010 #include "HLTrigger/HLTcore/interface/HLTFilter.h"
0011
0012 #include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h"
0013 #include "DataFormats/RecoCandidate/interface/RecoEcalCandidateIsolation.h"
0014
0015 namespace edm {
0016 class ConfigurationDescriptions;
0017 }
0018
0019
0020
0021
0022
0023 class HLTEgammaGenericQuadraticFilter : public HLTFilter {
0024 public:
0025 explicit HLTEgammaGenericQuadraticFilter(const edm::ParameterSet&);
0026 ~HLTEgammaGenericQuadraticFilter() override;
0027 bool hltFilter(edm::Event&,
0028 const edm::EventSetup&,
0029 trigger::TriggerFilterObjectWithRefs& filterproduct) const override;
0030 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0031
0032 private:
0033 edm::InputTag candTag_;
0034 edm::InputTag varTag_;
0035 edm::EDGetTokenT<trigger::TriggerFilterObjectWithRefs> candToken_;
0036 edm::EDGetTokenT<reco::RecoEcalCandidateIsolationMap> varToken_;
0037
0038 bool lessThan_;
0039 bool useEt_;
0040 bool useAbs_;
0041
0042
0043
0044
0045
0046 std::vector<double> energyLowEdges_;
0047 std::vector<double> thrRegularEB_;
0048 std::vector<double> thrRegularEE_;
0049 std::vector<double> thrOverEEB_;
0050 std::vector<double> thrOverEEE_;
0051 std::vector<double> thrOverE2EB_;
0052 std::vector<double> thrOverE2EE_;
0053 int ncandcut_;
0054
0055 edm::InputTag l1EGTag_;
0056
0057 edm::InputTag rhoTag_;
0058 edm::EDGetTokenT<double> rhoToken_;
0059 bool doRhoCorrection_;
0060 double rhoMax_;
0061 double rhoScale_;
0062 std::vector<double> effectiveAreas_;
0063 std::vector<double> absEtaLowEdges_;
0064 };
0065
0066 #endif