00001 #ifndef DPGAnalysis_SiStripTools_DigiInvestigatorHistogramMaker_H 00002 #define DPGAnalysis_SiStripTools_DigiInvestigatorHistogramMaker_H 00003 00004 #include <string> 00005 #include <map> 00006 #include "DPGAnalysis/SiStripTools/interface/RunHistogramManager.h" 00007 00008 namespace edm { 00009 class ParameterSet; 00010 } 00011 class TH1F; 00012 class TProfile; 00013 class TFileDirectory; 00014 00015 class DigiInvestigatorHistogramMaker { 00016 00017 public: 00018 DigiInvestigatorHistogramMaker(); 00019 DigiInvestigatorHistogramMaker(const edm::ParameterSet& iConfig); 00020 00021 ~DigiInvestigatorHistogramMaker(); 00022 00023 void book(const std::string dirname, const std::map<unsigned int, std::string>& labels); 00024 void book(const std::string dirname); 00025 void beginRun(const unsigned int nrun); 00026 void fill(const unsigned int orbit, const std::map<unsigned int,int>& ndigi); 00027 00028 private: 00029 00030 std::string _hitname; 00031 const int _nbins; 00032 const int _norbbin; 00033 int _scalefact; 00034 const bool _runHisto; 00035 std::map<unsigned int,int> _binmax; 00036 std::map<unsigned int, std::string> _labels; 00037 00038 00039 RunHistogramManager _rhm; 00040 std::map<unsigned int,TProfile**> _nmultvsorbrun; 00041 std::map<unsigned int,TH1F*> _nmult; 00042 std::map<unsigned int,TFileDirectory*> _subdirs; 00043 00044 }; 00045 00046 00047 #endif // DPGAnalysis_SiStripTools_DigiInvestigatorHistogramMaker_H