#include <RawDataClient.h>
Public Types | |
enum | MESets { kQualitySummary, nMESets } |
enum | Sources { sL1ADCC, sFEStatus, nSources } |
Public Member Functions | |
void | bookMEs () |
void | producePlots () |
RawDataClient (const edm::ParameterSet &, const edm::ParameterSet &) | |
~RawDataClient () | |
Static Public Member Functions | |
static void | setMEData (std::vector< MEData > &) |
Private Attributes | |
int | synchErrorThreshold_ |
Definition at line 8 of file RawDataClient.h.
Reimplemented from ecaldqm::DQWorker.
Definition at line 17 of file RawDataClient.h.
{ kQualitySummary, nMESets };
Reimplemented from ecaldqm::DQWorkerClient.
Definition at line 24 of file RawDataClient.h.
data refman pasoursint CMSSW_5_2_7_hltpatch2 src DQM EcalBarrelMonitorClient src RawDataClient cc ecaldqm::RawDataClient::RawDataClient | ( | const edm::ParameterSet & | _params, |
const edm::ParameterSet & | _paths | ||
) |
Definition at line 13 of file RawDataClient.cc.
References edm::ParameterSet::getUntrackedParameter(), edm::ParameterSet::getUntrackedParameterSet(), ecaldqm::RawDataTask::kFEStatus, and ecaldqm::RawDataTask::kL1ADCC.
{ edm::ParameterSet const& taskParams(_params.getUntrackedParameterSet(name_)); synchErrorThreshold_ = taskParams.getUntrackedParameter<int>("synchErrorThreshold"); edm::ParameterSet const& sources(_params.getUntrackedParameterSet("sources")); source_(sL1ADCC, "RawDataTask", RawDataTask::kL1ADCC, sources); source_(sFEStatus, "RawDataTask", RawDataTask::kFEStatus, sources); }
ecaldqm::RawDataClient::~RawDataClient | ( | ) | [inline] |
Definition at line 11 of file RawDataClient.h.
{}
void ecaldqm::RawDataClient::bookMEs | ( | ) | [virtual] |
Reimplemented from ecaldqm::DQWorker.
Definition at line 26 of file RawDataClient.cc.
References kQualitySummary, and ecaldqm::DQWorker::MEs_.
{ DQWorker::bookMEs(); MEs_[kQualitySummary]->resetAll(-1.); }
void ecaldqm::RawDataClient::producePlots | ( | ) | [virtual] |
Implements ecaldqm::DQWorkerClient.
Definition at line 34 of file RawDataClient.cc.
References ecaldqm::Disabled, python::tagInventory::entries, ecaldqm::FIFOFull, ecaldqm::FIFOFullL1ADesync, ecaldqm::DQWorkerClient::fillQuality_(), ecaldqm::ForcedZS, ecaldqm::getElectronicsMap(), ecaldqm::getNSuperCrystals(), kQualitySummary, ecaldqm::nFEFlags, sFEStatus, sL1ADCC, ecaldqm::DQWorkerClient::sources_, EcalDQMStatusHelper::STATUS_FLAG_ERROR, ecaldqm::Suppressed, synchErrorThreshold_, and ecaldqm::DQWorkerClient::towerStatus.
{ uint32_t mask(1 << EcalDQMStatusHelper::STATUS_FLAG_ERROR); for(unsigned dccid(1); dccid <= 54; dccid++){ float l1aDesync(sources_[sL1ADCC]->getBinContent(dccid)); float dccStatus(l1aDesync > synchErrorThreshold_ ? 0. : 1.); for(unsigned tower(1); tower <= getNSuperCrystals(dccid); tower++){ std::vector<DetId> ids(getElectronicsMap()->dccTowerConstituents(dccid, tower)); if(ids.size() == 0) continue; float towerStatus(dccStatus); if(towerStatus > 0.){ // if the DCC is good, look into individual FEs float towerEntries(0.); for(unsigned iS(0); iS < nFEFlags; iS++){ float entries(sources_[sFEStatus]->getBinContent(ids[0], iS + 1)); towerEntries += entries; if(entries > 0. && iS != Enabled && iS != Disabled && iS != Suppressed && iS != FIFOFull && iS != FIFOFullL1ADesync && iS != ForcedZS) towerStatus = 0.; } if(towerEntries < 1.) towerStatus = 2.; } if(dccid <= 9 || dccid >= 46){ std::vector<EcalScDetId> scs(getElectronicsMap()->getEcalScDetId(dccid, tower)); for(std::vector<EcalScDetId>::iterator scItr(scs.begin()); scItr != scs.end(); ++scItr) fillQuality_(kQualitySummary, *scItr, mask, towerStatus); } else fillQuality_(kQualitySummary, ids[0], mask, towerStatus); } } }
void ecaldqm::RawDataClient::setMEData | ( | std::vector< MEData > & | _data | ) | [static] |
Reimplemented from ecaldqm::DQWorker.
Definition at line 78 of file RawDataClient.cc.
References MonitorElement::DQM_KIND_TH2F, EcalDQMBinningService::kEcal2P, kQualitySummary, and EcalDQMBinningService::kSuperCrystal.
{ _data[kQualitySummary] = MEData("QualitySummary", BinService::kEcal2P, BinService::kSuperCrystal, MonitorElement::DQM_KIND_TH2F); }
int ecaldqm::RawDataClient::synchErrorThreshold_ [private] |
Definition at line 31 of file RawDataClient.h.
Referenced by producePlots().