Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 13:11:44

0001 #ifndef SiStripUtility_H
0002 #define SiStripUtility_H
0003 
0004 /** \class SiStripUtility
0005  * *
0006  *  Class that handles the SiStrip Quality Tests
0007  *
0008  *  \author Suchandra Dutta
0009  */
0010 
0011 #include "DQMServices/Core/interface/DQMStore.h"
0012 
0013 #include <vector>
0014 #include <fstream>
0015 #include <string>
0016 #include <map>
0017 #include <cstdint>
0018 
0019 class TrackerTopology;
0020 
0021 class SiStripUtility {
0022 public:
0023   typedef dqm::harvesting::DQMStore DQMStore;
0024   typedef dqm::harvesting::MonitorElement MonitorElement;
0025 
0026   static int getMEList(std::string const& name, std::vector<std::string>& values);
0027   static bool checkME(std::string const& element, std::string const& name, std::string& full_path);
0028   static int getMEList(std::string const& name, std::string& dir_path, std::vector<std::string>& me_names);
0029 
0030   static void split(std::string const& str, std::vector<std::string>& tokens, std::string const& delimiters = " ");
0031   static void getMEStatusColor(int status, int& rval, int& gval, int& bval);
0032   static void getDetectorStatusColor(int status, int& rval, int& gval, int& bval);
0033   static void getMEStatusColor(int status, int& icol, std::string& tag);
0034   static int getMEStatus(MonitorElement const* me);
0035   static int getMEStatus(MonitorElement const* me, int& bad_channels);
0036   static void getModuleFolderList(DQMStore& dqm_store, std::vector<std::string>& m_ids);
0037   static void getModuleFolderList(DQMStore::IBooker& ibooker,
0038                                   DQMStore::IGetter& igetter,
0039                                   std::vector<std::string>& m_ids);
0040   static void getMEValue(MonitorElement const* me, std::string& val);
0041   static bool goToDir(DQMStore& dqm_store, std::string const& name);
0042   static bool goToDir(DQMStore::IBooker& ibooker, DQMStore::IGetter& igetter, std::string const& name);
0043   static void getSubDetectorTag(uint32_t det_id, std::string& subdet_tag, const TrackerTopology* tTopo);
0044   static void setBadModuleFlag(std::string& hname, uint16_t& flg);
0045   static void getBadModuleStatus(uint16_t flag, std::string& message);
0046   static void getTopFolderPath(DQMStore& dqm_store, std::string const& top_dir, std::string& path);
0047   static void getTopFolderPath(DQMStore::IBooker& ibooker,
0048                                DQMStore::IGetter& igetter,
0049                                std::string const& top_dir,
0050                                std::string& path);
0051 };
0052 
0053 #endif