CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/DQMOffline/JetMET/interface/PFJetAnalyzer.h

Go to the documentation of this file.
00001 #ifndef PFJetAnalyzer_H
00002 #define PFJetAnalyzer_H
00003 
00004 
00015 #include <memory>
00016 #include <fstream>
00017 #include "FWCore/Framework/interface/Frameworkfwd.h"
00018 #include "DQMOffline/JetMET/interface/PFJetAnalyzerBase.h"
00019 #include "FWCore/Framework/interface/Event.h"
00020 #include "FWCore/Framework/interface/MakerMacros.h"
00021 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00022 #include "FWCore/ServiceRegistry/interface/Service.h"
00023 #include "DQMServices/Core/interface/DQMStore.h"
00024 #include "DQMServices/Core/interface/MonitorElement.h"
00025 //#include "DataFormats/JetReco/interface/CaloJetCollection.h"
00026 #include "DataFormats/JetReco/interface/PFJet.h"
00027 
00028 
00029 
00030 class PFJetAnalyzer : public PFJetAnalyzerBase {
00031  public:
00032 
00034   PFJetAnalyzer(const edm::ParameterSet&);
00035   
00037   virtual ~PFJetAnalyzer();
00038 
00040   void beginJob(DQMStore * dbe);
00041 
00043   void analyze(const edm::Event&, const edm::EventSetup&, const reco::PFJetCollection& pfJets);
00044   //
00045   void setSource(std::string source) {
00046     _source = source;
00047   }
00048   //
00049   void setLeadJetFlag(int flag) {
00050     _leadJetFlag = flag;
00051   }
00052   int getLeadJetFlag() {
00053     return  _leadJetFlag;
00054   }
00055   void setJetLoPass(int pass) {
00056     _JetLoPass = pass;
00057   }
00058 
00059   void setJetHiPass(int pass) {
00060     _JetHiPass = pass;
00061   }
00062 
00063 
00064  private:
00065   // ----------member data ---------------------------
00066 
00067   int   _JetLoPass;
00068   int   _JetHiPass;
00069   int   _leadJetFlag;
00070   double _ptThreshold;
00071   //histo binning parameters
00072   int    etaBin;
00073   double etaMin;
00074   double etaMax;
00075 
00076   int    phiBin;
00077   double phiMin;
00078   double phiMax;
00079 
00080   int    ptBin;
00081   double ptMin;
00082   double ptMax;
00083 
00084   int    eBin;
00085   double eMin;
00086   double eMax;
00087 
00088   int    pBin;
00089   double pMin;
00090   double pMax;
00091 
00092   int fillpfJIDPassFrac;
00093 
00094   double _ThisCHFMin;
00095   double _ThisNHFMax;
00096   double _ThisCEFMax;
00097   double _ThisNEFMax;
00098   double _LooseCHFMin;
00099   double _LooseNHFMax;
00100   double _LooseCEFMax;
00101   double _LooseNEFMax;
00102   double _TightCHFMin;
00103   double _TightNHFMax;
00104   double _TightCEFMax;
00105   double _TightNEFMax;
00106 
00107   //the histos
00108   MonitorElement* jetME;
00109 
00110   edm::ParameterSet parameters;
00111   // Switch for verbosity
00112   std::string metname;
00113   // Calo Jet Label
00114   edm::InputTag thePFJetCollectionLabel;
00115   std::string _source;
00116 
00117 /*   // Generic Jet Parameters */
00118 /*   MonitorElement* mEta; */
00119 /*   MonitorElement* mPhi; */
00120 /*   MonitorElement* mE; */
00121 /*   MonitorElement* mP; */
00122 /*   MonitorElement* mPt; */
00123 /*   MonitorElement* mMass; */
00124 /*   MonitorElement* mConstituents; */
00125 
00126 /*   // Leading Jet Parameters */
00127 /*   MonitorElement* mEtaFirst; */
00128 /*   MonitorElement* mPhiFirst; */
00129 /*   MonitorElement* mEFirst; */
00130 /*   MonitorElement* mPtFirst; */
00131   MonitorElement* mPt;
00132   MonitorElement* mPt_1;
00133   MonitorElement* mPt_2;
00134   MonitorElement* mPt_3;
00135   MonitorElement* mEta;
00136   MonitorElement* mPhi;
00137   MonitorElement* mConstituents;
00138   MonitorElement* mHFrac;
00139   MonitorElement* mEFrac;
00140   MonitorElement* mPhiVSEta;
00141 
00142   MonitorElement* mPt_Barrel;
00143   MonitorElement* mPhi_Barrel;
00144 
00145   MonitorElement* mPt_EndCap;
00146   MonitorElement* mPhi_EndCap;
00147 
00148   MonitorElement* mPt_Forward;
00149   MonitorElement* mPhi_Forward;
00150 
00151   MonitorElement* mPt_Barrel_Lo;
00152   MonitorElement* mPhi_Barrel_Lo;
00153   MonitorElement* mConstituents_Barrel_Lo;
00154   MonitorElement* mHFrac_Barrel_Lo;
00155   MonitorElement* mPt_EndCap_Lo;
00156   MonitorElement* mPhi_EndCap_Lo;
00157   MonitorElement* mConstituents_EndCap_Lo;
00158   MonitorElement* mHFrac_EndCap_Lo;
00159   MonitorElement* mPt_Forward_Lo;
00160   MonitorElement* mPhi_Forward_Lo;
00161   MonitorElement* mConstituents_Forward_Lo;
00162   MonitorElement* mHFrac_Forward_Lo;
00163 
00164   MonitorElement* mPt_Barrel_Hi;
00165   MonitorElement* mPhi_Barrel_Hi;
00166   MonitorElement* mConstituents_Barrel_Hi;
00167   MonitorElement* mHFrac_Barrel_Hi;
00168   MonitorElement* mPt_EndCap_Hi;
00169   MonitorElement* mPhi_EndCap_Hi;
00170   MonitorElement* mConstituents_EndCap_Hi;
00171   MonitorElement* mHFrac_EndCap_Hi;
00172   MonitorElement* mPt_Forward_Hi;
00173   MonitorElement* mPhi_Forward_Hi;
00174   MonitorElement* mConstituents_Forward_Hi;
00175   MonitorElement* mHFrac_Forward_Hi;
00176   // ---
00177 
00178 
00179   MonitorElement* mE_Barrel;
00180   MonitorElement* mE_EndCap;
00181   MonitorElement* mE_Forward;
00182 
00183   MonitorElement* mE;
00184   MonitorElement* mP;
00185   MonitorElement* mMass;
00186   MonitorElement* mNJets;
00187   MonitorElement* mDPhi;
00188 
00189   // Leading Jet Parameters
00190   MonitorElement* mEtaFirst;
00191   MonitorElement* mPhiFirst;
00192   MonitorElement* mEFirst;
00193   MonitorElement* mPtFirst;
00194 
00195   // Events passing the jet triggers
00196   MonitorElement* mEta_Lo;
00197   MonitorElement* mPhi_Lo;
00198   MonitorElement* mPt_Lo;
00199 
00200   MonitorElement* mEta_Hi;
00201   MonitorElement* mPhi_Hi;
00202   MonitorElement* mPt_Hi;
00203   // PFlowJet specific
00204 
00205   MonitorElement* mChargedHadronEnergy;
00206   MonitorElement* mNeutralHadronEnergy;
00207   MonitorElement* mChargedEmEnergy;
00208   MonitorElement* mChargedMuEnergy;
00209   MonitorElement* mNeutralEmEnergy;
00210   MonitorElement* mChargedMultiplicity;
00211   MonitorElement* mNeutralMultiplicity;
00212   MonitorElement* mMuonMultiplicity;
00213 
00214   //new Plots with Res./ Eff. as function of neutral, charged &  em fraction
00215 
00216   MonitorElement* mNeutralFraction;
00217   MonitorElement* mNeutralFraction2;
00218 
00219   MonitorElement* mEEffNeutralFraction;
00220   MonitorElement* mEEffChargedFraction;
00221   MonitorElement* mEResNeutralFraction;
00222   MonitorElement* mEResChargedFraction;
00223   MonitorElement* nEEff;
00224 
00225   MonitorElement* mLooseJIDPassFractionVSeta;
00226   MonitorElement* mLooseJIDPassFractionVSpt;
00227   MonitorElement* mTightJIDPassFractionVSeta;
00228   MonitorElement* mTightJIDPassFractionVSpt;
00229 
00230 };
00231 #endif