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