Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef DQM_SiStripCommissioningSummary_SummaryHistogramFactory_H
0002 #define DQM_SiStripCommissioningSummary_SummaryHistogramFactory_H
0003 
0004 #include "DataFormats/SiStripCommon/interface/SiStripConstants.h"
0005 #include "TH1.h"
0006 #include <string>
0007 #include <map>
0008 #include <cstdint>
0009 
0010 class SummaryGenerator;
0011 
0012 template <class T>
0013 class SummaryHistogramFactory {
0014 public:
0015   SummaryHistogramFactory();
0016   ~SummaryHistogramFactory();
0017 
0018   void init(const sistrip::Monitorable&,
0019             const sistrip::Presentation&,
0020             const sistrip::View&,
0021             const std::string& top_level_dir,
0022             const sistrip::Granularity&);
0023 
0024   uint32_t extract(const std::map<uint32_t, T>& data);
0025 
0026   void fill(TH1& summary_histo);
0027 
0028 private:
0029   sistrip::Monitorable mon_;
0030   sistrip::Presentation pres_;
0031   sistrip::View view_;
0032   std::string level_;
0033   sistrip::Granularity gran_;
0034   SummaryGenerator* generator_;
0035 };
0036 
0037 #endif  // DQM_SiStripCommissioningSummary_SummaryHistogramFactory_H