File indexing completed on 2024-04-06 12:18:21
0001 #ifndef HLTElectronPixelMatchFilter_h
0002 #define HLTElectronPixelMatchFilter_h
0003
0004
0005
0006
0007
0008
0009
0010 #include "HLTrigger/HLTcore/interface/HLTFilter.h"
0011 #include "DataFormats/EgammaReco/interface/ElectronSeed.h"
0012 #include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h"
0013 #include "DataFormats/EgammaReco/interface/SuperClusterFwd.h"
0014 namespace edm {
0015 class ConfigurationDescriptions;
0016 }
0017
0018 class HLTElectronPixelMatchFilter : public HLTFilter {
0019 public:
0020 explicit HLTElectronPixelMatchFilter(const edm::ParameterSet&);
0021 ~HLTElectronPixelMatchFilter() override;
0022 bool hltFilter(edm::Event&,
0023 const edm::EventSetup&,
0024 trigger::TriggerFilterObjectWithRefs& filterproduct) const override;
0025 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0026
0027 private:
0028 float calDPhi1Sq(reco::ElectronSeedCollection::const_iterator seed, int charge) const;
0029 float calDPhi2Sq(reco::ElectronSeedCollection::const_iterator seed, int charge) const;
0030 float calDZ2Sq(reco::ElectronSeedCollection::const_iterator seed, int charge) const;
0031 int getNrOfMatches(edm::Handle<reco::ElectronSeedCollection>& eleSeeds, reco::SuperClusterRef& candSCRef) const;
0032
0033 edm::InputTag candTag_;
0034 edm::EDGetTokenT<trigger::TriggerFilterObjectWithRefs> candToken_;
0035
0036 edm::InputTag l1PixelSeedsTag_;
0037 edm::EDGetTokenT<reco::ElectronSeedCollection> l1PixelSeedsToken_;
0038
0039 double npixelmatchcut_;
0040 int ncandcut_;
0041
0042 edm::InputTag l1EGTag_;
0043
0044
0045 float s2BarrelThres_;
0046 float s2InterThres_;
0047 float s2ForwardThres_;
0048
0049
0050 float sPhi1B_;
0051 float sPhi1I_;
0052 float sPhi1F_;
0053 float sPhi2B_;
0054 float sPhi2I_;
0055 float sPhi2F_;
0056 float sZ2B_;
0057 float sR2I_;
0058 float sR2F_;
0059
0060 bool isPixelVeto_;
0061 bool useS_;
0062 };
0063
0064 #endif