![]() |
![]() |
00001 // -*- C++ -*- 00002 // 00003 // Package: METProducers 00004 // Class: METProducer 00005 // 00013 // 00014 // Original Author: Rick Cavanaugh 00015 // Created: May 14, 2005 00016 // $Id: METProducer.h,v 1.30 2012/07/12 08:14:37 sakuma Exp $ 00017 // 00018 // 00019 00020 #ifndef METProducer_h 00021 #define METProducer_h 00022 00023 #include <string.h> 00024 #include "FWCore/Framework/interface/EDProducer.h" 00025 #include "RecoMET/METAlgorithms/interface/TCMETAlgo.h" 00026 #include "FWCore/Utilities/interface/InputTag.h" 00027 00028 namespace edm { 00029 class ParameterSet; 00030 class Event; 00031 class EventSetup; 00032 } 00033 00034 class TCMETAlgo; 00035 00036 namespace metsig { 00037 class SignAlgoResolutions; 00038 } 00039 00040 namespace cms 00041 { 00042 class METProducer: public edm::EDProducer 00043 { 00044 public: 00045 explicit METProducer(const edm::ParameterSet&); 00046 virtual ~METProducer() { } 00047 virtual void produce(edm::Event&, const edm::EventSetup&); 00048 00049 private: 00050 00051 void produce_CaloMET(edm::Event& event); 00052 void produce_TCMET(edm::Event& event, const edm::EventSetup& setup); 00053 void produce_PFMET(edm::Event& event); 00054 void produce_PFClusterMET(edm::Event& event); 00055 void produce_GenMET(edm::Event& event); 00056 void produce_else(edm::Event& event); 00057 00058 00059 edm::InputTag inputLabel; 00060 std::string inputType; 00061 std::string METtype; 00062 std::string alias; 00063 00064 //Calculate MET Significance (not necessary at HLT) 00065 bool calculateSignificance_; 00066 metsig::SignAlgoResolutions *resolutions_; 00067 edm::InputTag jetsLabel_; //used for jet-based significance calculation 00068 00069 //Use HF in CaloMET calculation? 00070 bool noHF; 00071 00072 //Use an Et threshold on all of the objects in the CaloMET calculation? 00073 double globalThreshold; 00074 00075 //Use only fiducial GenParticles in GenMET calculation? 00076 bool onlyFiducial; 00077 00078 //Use Pt instaed of Et 00079 bool usePt; 00080 00081 TCMETAlgo tcMetAlgo_; 00082 }; 00083 } 00084 00085 #endif // METProducer_h