00001 #ifndef RecoTauTag_RecoTau_CaloRecoTauDiscriminationAgainstElectron_H_ 00002 #define RecoTauTag_RecoTau_CaloRecoTauDiscriminationAgainstElectron_H_ 00003 00004 /* class CaloRecoTauDiscriminationAgainstElectron 00005 * created : Feb 17 2008, 00006 * revised : , 00007 * contributors : Konstantinos Petridis, Sebastien Greder, Maiko Takahashi, Alexandre Nikitenko (Imperial College, London) 00008 */ 00009 00010 #include "FWCore/Framework/interface/EDProducer.h" 00011 #include "FWCore/Framework/interface/ESHandle.h" 00012 #include "FWCore/Framework/interface/Event.h" 00013 #include "FWCore/Framework/interface/EventSetup.h" 00014 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00015 00016 #include "DataFormats/TauReco/interface/CaloTau.h" 00017 #include "DataFormats/TauReco/interface/CaloTauDiscriminator.h" 00018 #include "DataFormats/TrackReco/interface/Track.h" 00019 00020 #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h" 00021 00022 #include "RecoTauTag/TauTagTools/interface/TauTagTools.h" 00023 00024 using namespace std; 00025 using namespace edm; 00026 using namespace edm::eventsetup; 00027 using namespace reco; 00028 00029 class CaloRecoTauDiscriminationAgainstElectron : public EDProducer { 00030 public: 00031 explicit CaloRecoTauDiscriminationAgainstElectron(const ParameterSet& iConfig){ 00032 CaloTauProducer_ = iConfig.getParameter<string>("CaloTauProducer"); 00033 leadTrack_HCAL3x3hitsEtSumOverPt_minvalue_ = iConfig.getParameter<double>("leadTrack_HCAL3x3hitsEtSumOverPt_minvalue"); 00034 ApplyCut_maxleadTrackHCAL3x3hottesthitDEta_ = iConfig.getParameter<bool>("ApplyCut_maxleadTrackHCAL3x3hottesthitDEta"); 00035 maxleadTrackHCAL3x3hottesthitDEta_ = iConfig.getParameter<double>("maxleadTrackHCAL3x3hottesthitDEta"); 00036 ApplyCut_leadTrackavoidsECALcrack_ = iConfig.getParameter<bool>("ApplyCut_leadTrackavoidsECALcrack"); 00037 00038 produces<CaloTauDiscriminator>(); 00039 } 00040 ~CaloRecoTauDiscriminationAgainstElectron(){} 00041 virtual void produce(Event&, const EventSetup&); 00042 private: 00043 string CaloTauProducer_; 00044 double leadTrack_HCAL3x3hitsEtSumOverPt_minvalue_; 00045 bool ApplyCut_maxleadTrackHCAL3x3hottesthitDEta_; 00046 double maxleadTrackHCAL3x3hottesthitDEta_; 00047 bool ApplyCut_leadTrackavoidsECALcrack_; 00048 }; 00049 #endif