File indexing completed on 2024-04-06 12:09:44
0001 #ifndef __DQMOffline_PFTau_PFClient__
0002 #define __DQMOffline_PFTau_PFClient__
0003
0004 #include "FWCore/Framework/interface/Frameworkfwd.h"
0005
0006 #include "FWCore/Utilities/interface/InputTag.h"
0007
0008 #include "DQMServices/Core/interface/DQMEDHarvester.h"
0009 #include "DQMServices/Core/interface/DQMStore.h"
0010
0011 class PFClient : public DQMEDHarvester {
0012 public:
0013 PFClient(const edm::ParameterSet ¶meterSet);
0014
0015 private:
0016 void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override;
0017
0018 void doSummaries(DQMStore::IBooker &, DQMStore::IGetter &);
0019 void doEfficiency(DQMStore::IBooker &, DQMStore::IGetter &);
0020 void doProjection(DQMStore::IBooker &, DQMStore::IGetter &);
0021 void doProfiles(DQMStore::IBooker &, DQMStore::IGetter &);
0022 void createResolutionPlots(DQMStore::IBooker &, DQMStore::IGetter &, std::string &folder, std::string &name);
0023 void getHistogramParameters(MonitorElement *me_slice, double &avarage, double &rms, double &mean, double &sigma);
0024 void createEfficiencyPlots(DQMStore::IBooker &, DQMStore::IGetter &, std::string &folder, std::string &name);
0025
0026 void createProjectionPlots(DQMStore::IBooker &, DQMStore::IGetter &, std::string &folder, std::string &name);
0027 void createProfilePlots(DQMStore::IBooker &, DQMStore::IGetter &, std::string &folder, std::string &name);
0028
0029 std::vector<std::string> folderNames_;
0030 std::vector<std::string> histogramNames_;
0031 std::vector<std::string> effHistogramNames_;
0032 std::vector<std::string> projectionHistogramNames_;
0033 std::vector<std::string> profileHistogramNames_;
0034 bool efficiencyFlag_;
0035 bool profileFlag_;
0036 };
0037
0038 #endif