File indexing completed on 2024-04-06 12:33:08
0001 #ifndef METTESTERPOSTPROCESSOR_H
0002 #define METTESTERPOSTPROCESSOR_H
0003
0004
0005
0006
0007 #include <cmath>
0008 #include <cstdio>
0009 #include <memory>
0010 #include <sstream>
0011
0012
0013 #include "FWCore/Framework/interface/Frameworkfwd.h"
0014
0015 #include "FWCore/Framework/interface/Event.h"
0016 #include "FWCore/Framework/interface/MakerMacros.h"
0017
0018 #include "CommonTools/UtilAlgos/interface/TFileService.h"
0019 #include "DQMServices/Core/interface/DQMEDHarvester.h"
0020 #include "DQMServices/Core/interface/DQMStore.h"
0021 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0022 #include "FWCore/ServiceRegistry/interface/Service.h"
0023
0024
0025
0026
0027 class METTesterPostProcessor : public DQMEDHarvester {
0028 public:
0029 explicit METTesterPostProcessor(const edm::ParameterSet &);
0030 ~METTesterPostProcessor() override;
0031
0032 private:
0033 void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override;
0034 std::vector<std::string> met_dirs;
0035
0036 void FillMETRes(std::string metdir, DQMStore::IGetter &);
0037 MonitorElement *mMETDifference_GenMETTrue_MET0to20;
0038 MonitorElement *mMETDifference_GenMETTrue_MET20to40;
0039 MonitorElement *mMETDifference_GenMETTrue_MET40to60;
0040 MonitorElement *mMETDifference_GenMETTrue_MET60to80;
0041 MonitorElement *mMETDifference_GenMETTrue_MET80to100;
0042 MonitorElement *mMETDifference_GenMETTrue_MET100to150;
0043 MonitorElement *mMETDifference_GenMETTrue_MET150to200;
0044 MonitorElement *mMETDifference_GenMETTrue_MET200to300;
0045 MonitorElement *mMETDifference_GenMETTrue_MET300to400;
0046 MonitorElement *mMETDifference_GenMETTrue_MET400to500;
0047 MonitorElement *mMETDifference_GenMETTrue_MET500;
0048 MonitorElement *mMETDifference_GenMETTrue_METResolution;
0049 };
0050
0051 #endif