CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/RecoParticleFlow/PFProducer/plugins/PFBlockProducer.h

Go to the documentation of this file.
00001 #ifndef RecoParticleFlow_PFProducer_PFBlockProducer_h_
00002 #define RecoParticleFlow_PFProducer_PFBlockProducer_h_
00003 
00004 // system include files
00005 #include <memory>
00006 #include <string>
00007 
00008 // user include files
00009 #include "FWCore/Framework/interface/Frameworkfwd.h"
00010 #include "FWCore/Framework/interface/EDProducer.h"
00011 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00012 
00013 #include "FWCore/Framework/interface/Event.h"
00014 #include "FWCore/Framework/interface/MakerMacros.h"
00015 
00016 #include "RecoParticleFlow/PFProducer/interface/PFBlockAlgo.h"
00017 
00018 
00030 class FSimEvent;
00031 
00032 
00033 
00034 class PFBlockProducer : public edm::EDProducer {
00035  public:
00036 
00037   explicit PFBlockProducer(const edm::ParameterSet&);
00038 
00039   ~PFBlockProducer();
00040   
00041   virtual void produce(edm::Event&, const edm::EventSetup&);
00042 
00043   virtual void beginJob();
00044 
00045   virtual void beginRun(edm::Run & r, const edm::EventSetup & c);
00046 
00047  private:
00048 
00049   
00050 
00051   edm::InputTag   inputTagRecTracks_;
00052   edm::InputTag   inputTagGsfRecTracks_;
00053   edm::InputTag   inputTagConvBremGsfRecTracks_;
00054   edm::InputTag   inputTagRecMuons_;
00055   edm::InputTag   inputTagPFNuclear_;
00056   edm::InputTag   inputTagPFClustersECAL_;
00057   edm::InputTag   inputTagPFClustersHCAL_;
00058   edm::InputTag   inputTagPFClustersHO_;
00059   edm::InputTag   inputTagPFClustersHFEM_;
00060   edm::InputTag   inputTagPFClustersHFHAD_;
00061   edm::InputTag   inputTagPFClustersPS_;
00062   edm::InputTag   inputTagPFConversions_;
00063   edm::InputTag   inputTagPFV0_;
00064   edm::InputTag   inputTagEGPhotons_;
00065   
00066   // Link track and HCAL clusters to HO clusters ?
00067   bool useHO_;
00068 
00070   bool   verbose_;
00071 
00073   bool   useNuclear_;
00074 
00076   bool useEGPhotons_;
00077   
00079   bool  useConversions_;  
00080   
00082   bool   useConvBremGsfTracks_;
00083 
00085   bool useV0_;
00086 
00088   bool usePFatHLT_;
00089 
00090   // Glowinski & Gouzevitch
00091   // Use the optimized KDTree Track/Ecal linker?
00092   bool useKDTreeTrackEcalLinker_;
00093   // !Glowinski & Gouzevitch
00094 
00096   PFBlockAlgo            pfBlockAlgo_;
00097 
00098 };
00099 
00100 #endif