CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/DQM/SiStripMonitorClient/interface/SiStripTrackerMapCreator.h

Go to the documentation of this file.
00001 #ifndef _SiStripTrackerMapCreator_h_
00002 #define _SiStripTrackerMapCreator_h_
00003 
00004 #include "DQMServices/Core/interface/MonitorElement.h"
00005 #include "CondFormats/SiStripObjects/interface/SiStripFedCabling.h"
00006 #include "FWCore/Framework/interface/ESHandle.h"
00007 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00008 
00009 #include <fstream>
00010 #include <map>
00011 #include <vector>
00012 #include <string>
00013 
00014 class DQMStore;
00015 class TkDetMap;
00016 class TrackerMap;
00017 class MonitorElement;
00018 
00019 class SiStripTrackerMapCreator {
00020 
00021  public:
00022 
00023   SiStripTrackerMapCreator();
00024  ~SiStripTrackerMapCreator();
00025   bool readConfiguration();
00026 
00027   void create(const edm::ParameterSet & tkmapPset, 
00028               const edm::ESHandle<SiStripFedCabling>& fedcabling, 
00029               DQMStore* dqm_store, std::string& htype);
00030   void createForOffline(const edm::ParameterSet & tkmapPset, DQMStore* dqm_store, std::string& htype);
00031 
00032 
00033  private:
00034 
00035   void paintTkMapFromAlarm(uint32_t det_id, DQMStore* dqm_store);
00036   void paintTkMapFromHistogram(DQMStore* dqm_store, MonitorElement* me, std::string& map_type);
00037   void setTkMapFromHistogram(DQMStore* dqm_store, std::string& htype);
00038   void setTkMapRange(std::string& map_type);
00039   uint16_t getDetectorFlagAndComment(DQMStore* dqm_store, uint32_t det_id, std::ostringstream& comment);
00040 
00041   TrackerMap* trackerMap_;
00042   std::string tkMapName_;
00043 
00044   float tkMapMax;
00045   float tkMapMin;
00046   int   nDet;
00047   TkDetMap* tkDetMap_;
00048 };
00049 #endif