00001 #ifndef DQM_SiStripCommissioningSummary_SummaryHistogramFactory_H 00002 #define DQM_SiStripCommissioningSummary_SummaryHistogramFactory_H 00003 00004 #include "DataFormats/SiStripCommon/interface/SiStripConstants.h" 00005 #include <boost/cstdint.hpp> 00006 #include "TH1.h" 00007 #include <string> 00008 #include <map> 00009 00010 class SummaryGenerator; 00011 00012 template<class T> 00013 class SummaryHistogramFactory { 00014 00015 public: 00016 00017 SummaryHistogramFactory(); 00018 ~SummaryHistogramFactory(); 00019 00020 void init( const sistrip::Monitorable&, 00021 const sistrip::Presentation&, 00022 const sistrip::View&, 00023 const std::string& top_level_dir, 00024 const sistrip::Granularity& ); 00025 00026 uint32_t extract( const std::map<uint32_t,T>& data ); 00027 00028 void fill( TH1& summary_histo ); 00029 00030 private: 00031 00032 sistrip::Monitorable mon_; 00033 sistrip::Presentation pres_; 00034 sistrip::View view_; 00035 std::string level_; 00036 sistrip::Granularity gran_; 00037 SummaryGenerator* generator_; 00038 00039 }; 00040 00041 #endif // DQM_SiStripCommissioningSummary_SummaryHistogramFactory_H 00042 00043 00044