12 auto prefix_str =
name.substr(0, (
name.find(
':')));
14 auto const temp_str =
name.substr(
name.find(
':') + 1);
17 value.insert(0, prefix_str);
26 dir_path =
name.substr(0, (
name.find(
':')));
28 auto const temp_str =
name.substr(
name.find(
':') + 1);
35 if (
name.find(
name) == std::string::npos)
37 auto prefix_str =
name.substr(0, (
name.find(
':')));
39 auto const temp_str =
name.substr(
name.find(
':') + 1);
40 std::vector<std::string>
values;
43 if (
value.find(me_name) != std::string::npos) {
44 full_path = prefix_str +
value;
61 while (std::string::npos !=
pos || std::string::npos != lastPos) {
63 tokens.push_back(
str.substr(lastPos,
pos - lastPos));
66 lastPos =
str.find_first_not_of(delimiters,
pos);
69 pos =
str.find_first_of(delimiters, lastPos);
171 if (
me->getQReports().empty()) {
173 }
else if (
me->hasError()) {
175 }
else if (
me->hasWarning()) {
177 }
else if (
me->hasOtherReport()) {
188 if (
auto currDir = dqm_store.
pwd(); currDir.find(
"module_") != std::string::npos) {
189 mfolders.push_back(currDir);
192 for (
auto const& subdir :
subdirs) {
193 dqm_store.
cd(subdir);
202 std::vector<std::string>& mfolders) {
203 if (
auto currDir = ibooker.
pwd(); currDir.find(
"module_") != std::string::npos) {
204 mfolders.push_back(currDir);
207 for (
auto const& subdir :
subdirs) {
219 if (
me->getQReports().empty()) {
222 std::vector<QReport*> qreports =
me->getQReports();
223 bad_channels = qreports[0]->getBadChannels().size();
224 if (
me->hasError()) {
226 }
else if (
me->hasWarning()) {
228 }
else if (
me->hasOtherReport()) {
260 if ((
fname.find(
"Reference") != std::string::npos) || (
fname.find(
"AlCaReco") != std::string::npos) ||
261 (
fname.find(
"HLT") != std::string::npos) || (
fname.find(
"IsolatedBunches") != std::string::npos))
281 if ((
fname.find(
"Reference") != std::string::npos) || (
fname.find(
"AlCaReco") != std::string::npos) ||
282 (
fname.find(
"HLT") != std::string::npos) || (
fname.find(
"IsolatedBunches") != std::string::npos))
305 if (tTopo->
tidSide(det_id) == 2) {
307 }
else if (tTopo->
tidSide(det_id) == 1) {
317 if (tTopo->
tecSide(det_id) == 2) {
319 }
else if (tTopo->
tecSide(det_id) == 1) {
329 if (hname.find(
"FractionOfBadChannels") != std::string::npos)
331 else if (hname.find(
"NumberOfDigi") != std::string::npos)
333 else if (hname.find(
"NumberOfCluster") != std::string::npos)
335 else if (hname.find(
"ExcludedFedChannel") != std::string::npos)
337 else if (hname.find(
"DCSError") != std::string::npos)
345 message +=
" No Error";
347 if (((
flag >> 0) & 0
x1) > 0)
348 message +=
" Fed BadChannel : ";
349 if (((
flag >> 1) & 0
x1) > 0)
350 message +=
" # of Digi : ";
351 if (((
flag >> 2) & 0
x1) > 0)
352 message +=
" # of Clusters :";
353 if (((
flag >> 3) & 0
x1) > 0)
354 message +=
" Excluded FED Channel ";
355 if (((
flag >> 4) & 0
x1) > 0)
356 message +=
" DCSError ";
366 dqm_store.
cd(top_dir);
static void setBadModuleFlag(std::string &hname, uint16_t &flg)
static constexpr auto TEC
static void getModuleFolderList(DQMStore &dqm_store, std::vector< std::string > &m_ids)
static int getMEList(std::string const &name, std::vector< std::string > &values)
unsigned int tidSide(const DetId &id) const
virtual std::string pwd()
virtual bool dirExists(std::string const &path) const
static void getDetectorStatusColor(int status, int &rval, int &gval, int &bval)
std::string to_string(const V &value)
std::string pwd() override
static void getBadModuleStatus(uint16_t flag, std::string &message)
static void getMEValue(MonitorElement const *me, std::string &val)
unsigned int tecSide(const DetId &id) const
const std::string subdet_tag("SubDet")
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
static constexpr auto TOB
static constexpr auto TIB
static void getMEStatusColor(int status, int &rval, int &gval, int &bval)
static void split(std::string const &str, std::vector< std::string > &tokens, std::string const &delimiters=" ")
static void getSubDetectorTag(uint32_t det_id, std::string &subdet_tag, const TrackerTopology *tTopo)
static bool goToDir(DQMStore &dqm_store, std::string const &name)
static const int STATUS_OK
static bool checkME(std::string const &element, std::string const &name, std::string &full_path)
static int getMEStatus(MonitorElement const *me)
static constexpr auto TID
static void getTopFolderPath(DQMStore &dqm_store, std::string const &top_dir, std::string &path)
virtual DQM_DEPRECATED std::vector< std::string > getSubdirs() const