Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:08:40

0001 #ifndef _SiStripSummaryCreator_h_
0002 #define _SiStripSummaryCreator_h_
0003 
0004 #include "DQMServices/Core/interface/DQMStore.h"
0005 #include <fstream>
0006 #include <map>
0007 #include <vector>
0008 #include <string>
0009 
0010 class SiStripConfigWriter;
0011 
0012 class SiStripSummaryCreator {
0013 public:
0014   typedef dqm::harvesting::MonitorElement MonitorElement;
0015   typedef dqm::harvesting::DQMStore DQMStore;
0016 
0017   SiStripSummaryCreator();
0018   virtual ~SiStripSummaryCreator();
0019   bool readConfiguration(std::string const& file_path);
0020 
0021   void createSummary(DQMStore& dqm_store);
0022 
0023   void fillLayout(DQMStore& dqm_store);
0024   void setSummaryMENames(std::map<std::string, std::string>& me_names);
0025   int getFrequency() const { return summaryFrequency_; }
0026 
0027 private:
0028   MonitorElement* getSummaryME(DQMStore& dqm_store, std::string& name, std::string htype);
0029 
0030   void fillGrandSummaryHistos(DQMStore& dqm_store);
0031   void fillSummaryHistos(DQMStore& dqm_store);
0032   void fillHistos(int ival, int istep, std::string htype, MonitorElement* me_src, MonitorElement* me);
0033 
0034   std::map<std::string, std::string> summaryMEs_;
0035   int summaryFrequency_{-1};
0036 };
0037 #endif