CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/RecoEgamma/EgammaElectronProducers/plugins/GsfElectronEcalDrivenProducer.cc

Go to the documentation of this file.
00001 
00002 #include "GsfElectronEcalDrivenProducer.h"
00003 #include "RecoEgamma/EgammaElectronAlgos/interface/GsfElectronAlgo.h"
00004 
00005 #include "FWCore/Framework/interface/Frameworkfwd.h"
00006 #include "FWCore/Framework/interface/MakerMacros.h"
00007 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00009 #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h"
00010 #include "FWCore/ParameterSet/interface/ParameterSetDescription.h"
00011 
00012 #include "DataFormats/EgammaCandidates/interface/GsfElectronFwd.h"
00013 #include "DataFormats/EgammaCandidates/interface/GsfElectron.h"
00014 #include "DataFormats/EgammaReco/interface/ElectronSeed.h"
00015 #include "DataFormats/GsfTrackReco/interface/GsfTrack.h"
00016 #include "DataFormats/TrackCandidate/interface/TrackCandidateCollection.h"
00017 #include "DataFormats/TrackingRecHit/interface/TrackingRecHitFwd.h"
00018 #include "DataFormats/EgammaCandidates/interface/GsfElectronFwd.h"
00019 
00020 
00021 #include <iostream>
00022 
00023 using namespace reco;
00024 
00025 /* void GsfElectronEcalDrivenProducer::fillDescriptions( edm::ConfigurationDescriptions & descriptions )
00026  {
00027   edm::ParameterSetDescription desc ;
00028   GsfElectronBaseProducer::fillDescription(desc) ;
00029 
00030   // input collections
00031   desc.add<edm::InputTag>("ecalDrivenGsfElectronCoresTag",edm::InputTag("ecalDrivenGsfElectronCores")) ;
00032 
00033   // preselection parameters (ecal driven electrons)
00034   desc.add<double>("minSCEtBarrel",4.0) ;
00035   desc.add<double>("minSCEtEndcaps",4.0) ;
00036   desc.add<double>("minEOverPBarrel",0.0) ;
00037   desc.add<double>("maxEOverPBarrel",999999999.) ;
00038   desc.add<double>("minEOverPEndcaps",0.0) ;
00039   desc.add<double>("maxEOverPEndcaps",999999999.) ;
00040   desc.add<double>("maxDeltaEtaBarrel",0.02) ;
00041   desc.add<double>("maxDeltaEtaEndcaps",0.02) ;
00042   desc.add<double>("maxDeltaPhiBarrel",0.15) ;
00043   desc.add<double>("maxDeltaPhiEndcaps",0.15) ;
00044   desc.add<double>("hOverEConeSize",0.15) ;
00045   desc.add<double>("hOverEPtMin",0.) ;
00046   desc.add<double>("maxHOverEBarrel",0.15) ;
00047   desc.add<double>("maxHOverEEndcaps",0.15) ;
00048   desc.add<double>("maxHBarrel",0.0) ;
00049   desc.add<double>("maxHEndcaps",0.0) ;
00050   desc.add<double>("maxSigmaIetaIetaBarrel",999999999.) ;
00051   desc.add<double>("maxSigmaIetaIetaEndcaps",999999999.) ;
00052   desc.add<double>("maxFbremBarrel",999999999.) ;
00053   desc.add<double>("maxFbremEndcaps",999999999.) ;
00054   desc.add<bool>("isBarrel",false) ;
00055   desc.add<bool>("isEndcaps",false) ;
00056   desc.add<bool>("isFiducial",false) ;
00057   desc.add<bool>("seedFromTEC",true) ;
00058   desc.add<double>("maxTIP",999999999.) ;
00059   desc.add<double>("minMVA",-0.4) ;
00060 
00061   descriptions.add("produceEcalDrivenGsfElectrons",desc) ;
00062  }
00063  */
00064 GsfElectronEcalDrivenProducer::GsfElectronEcalDrivenProducer( const edm::ParameterSet & cfg )
00065  : GsfElectronBaseProducer(cfg)
00066  {}
00067 
00068 GsfElectronEcalDrivenProducer::~GsfElectronEcalDrivenProducer()
00069  {}
00070 
00071 // ------------ method called to produce the data  ------------
00072 void GsfElectronEcalDrivenProducer::produce( edm::Event & event, const edm::EventSetup & setup )
00073  {
00074   beginEvent(event,setup) ;
00075   algo_->completeElectrons() ;
00076   fillEvent(event) ;
00077   endEvent() ;
00078  }
00079 
00080