Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:17:58

0001 #ifndef CutBasedElectronID_H
0002 #define CutBasedElectronID_H
0003 
0004 #include "ElectronIDAlgo.h"
0005 
0006 #include "FWCore/Framework/interface/ConsumesCollector.h"
0007 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0008 #include "DataFormats/VertexReco/interface/Vertex.h"
0009 #include "DataFormats/VertexReco/interface/VertexFwd.h"
0010 
0011 class CutBasedElectronID : public ElectronIDAlgo {
0012 public:
0013   CutBasedElectronID(const edm::ParameterSet& conf, edm::ConsumesCollector& iC);
0014 
0015   ~CutBasedElectronID() override{};
0016 
0017   void setup(const edm::ParameterSet& conf) override;
0018   double result(const reco::GsfElectron*, const edm::Event&, const edm::EventSetup&) override;
0019   double cicSelection(const reco::GsfElectron*, const edm::Event&, const edm::EventSetup&);
0020   double robustSelection(const reco::GsfElectron*, const edm::Event&, const edm::EventSetup&);
0021   int classify(const reco::GsfElectron*);
0022   bool compute_cut(double x, double et, double cut_min, double cut_max, bool gtn = false);
0023 
0024 private:
0025   bool wantBinning_;
0026   bool newCategories_;
0027   std::string type_;
0028   std::string quality_;
0029   std::string version_;
0030   edm::EDGetTokenT<std::vector<reco::Vertex> > verticesCollection_;
0031   edm::ParameterSet cuts_;
0032 };
0033 
0034 #endif  // CutBasedElectronID_H