File indexing completed on 2024-04-06 12:18:20
0001 #ifndef HLTEgammaCaloIsolFilterPairs_h
0002 #define HLTEgammaCaloIsolFilterPairs_h
0003
0004
0005
0006
0007
0008
0009
0010 #include "HLTrigger/HLTcore/interface/HLTFilter.h"
0011
0012 #include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h"
0013
0014 #include "DataFormats/RecoCandidate/interface/RecoEcalCandidate.h"
0015 #include "DataFormats/RecoCandidate/interface/RecoEcalCandidateFwd.h"
0016 #include "DataFormats/RecoCandidate/interface/RecoEcalCandidateIsolation.h"
0017
0018
0019
0020
0021
0022 namespace edm {
0023 class ConfigurationDescriptions;
0024 }
0025
0026 class HLTEgammaCaloIsolFilterPairs : public HLTFilter {
0027 public:
0028 explicit HLTEgammaCaloIsolFilterPairs(const edm::ParameterSet&);
0029 ~HLTEgammaCaloIsolFilterPairs() override;
0030 bool hltFilter(edm::Event&,
0031 const edm::EventSetup&,
0032 trigger::TriggerFilterObjectWithRefs& filterproduct) const override;
0033 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0034
0035 private:
0036 edm::InputTag candTag_;
0037 edm::InputTag isoTag_;
0038 edm::InputTag nonIsoTag_;
0039 edm::EDGetTokenT<trigger::TriggerFilterObjectWithRefs> candToken_;
0040 edm::EDGetTokenT<reco::RecoEcalCandidateIsolationMap> isoToken_;
0041 edm::EDGetTokenT<reco::RecoEcalCandidateIsolationMap> nonIsoToken_;
0042
0043 double isolcut_EB1;
0044 double FracCut_EB1;
0045 double IsoloEt2_EB1;
0046 double isolcut_EE1;
0047 double FracCut_EE1;
0048 double IsoloEt2_EE1;
0049
0050 double isolcut_EB2;
0051 double FracCut_EB2;
0052 double IsoloEt2_EB2;
0053 double isolcut_EE2;
0054 double FracCut_EE2;
0055 double IsoloEt2_EE2;
0056
0057 bool AlsoNonIso_1, AlsoNonIso_2;
0058
0059 bool PassCaloIsolation(edm::Ref<reco::RecoEcalCandidateCollection> ref,
0060 const reco::RecoEcalCandidateIsolationMap& IsoMap,
0061 const reco::RecoEcalCandidateIsolationMap& NonIsoMap,
0062 int which,
0063 bool ChekAlsoNonIso) const;
0064 };
0065
0066 #endif