CMS 3D CMS Logo

/data/git/CMSSW_5_3_11_patch5/src/DQM/SiPixelMonitorClient/interface/SiPixelUtility.h

Go to the documentation of this file.
00001 #ifndef SiPixelUtility_H
00002 #define SiPixelUtility_H
00003 
00013 #include <vector>
00014 #include <fstream>
00015 #include <string>
00016 #include <map>
00017 #include "TH1.h"
00018 #include "TPaveText.h"
00019 #include "DQMServices/Core/interface/MonitorElement.h"
00020 #include "DQMServices/Core/interface/DQMStore.h"
00021 
00022 class SiPixelUtility
00023 {
00024  public:
00025  
00026  static int getMEList(std::string name, std::vector<std::string>& values);
00027  static bool checkME(std::string element, std::string name, std::string& full_path);
00028  static int getMEList(std::string name, std::string& dir_path, std::vector<std::string>& me_names);
00029 
00030  static void split(const std::string& str, std::vector<std::string>& tokens, 
00031                    const std::string& delimiters=" ");
00032  static void getStatusColor(int    status, int& rval, int&gval, int& bval);
00033  static void getStatusColor(int    status, int& icol, std::string& tag);
00034  static void getStatusColor(double status, int& rval, int&gval, int& bval);
00035  static int  getStatus(MonitorElement* me);
00036  
00037  static int computeHistoBin(std::string& module_path);
00038  static int computeErrorCode(DQMStore * bei, std::string& module_path);
00039  static int computeErrorCode(int status);
00040  static void fillPaveText(TPaveText* pave, std::map<std::string,std::pair<int,double> > messages); 
00041  static void createStatusLegendMessages(std::map<std::string,std::pair<int,double> >& messages);
00042  static std::map<std::string,std::string> sourceCodeMap();
00043  static void setDrawingOption(TH1* hist,float xlow=-1.,float xhigh=-1.);
00044  static std::vector<std::string> getQTestNameList(MonitorElement* me);
00045  
00046 };
00047 
00048 #endif