36 LogTrace(
"DTDQM|DTMonitorModule|DTDCSByLumiTask") <<
"[DTDCSByLumiTask]: Constructor" << endl;
43 LogTrace(
"DTDQM|DTMonitorModule|DTDCSByLumiTask")
44 <<
"DTDCSByLumiTask: processed " <<
theEvents <<
" events in " <<
theLumis <<
" lumi sections" << endl;
48 LogTrace(
"DTDQM|DTMonitorModule|DTDCSByLumiTask") <<
"[DTDCSByLumiTask]: begin run" << endl;
56 std::vector<eventsetup::EventSetupRecordKey> recordKeys;
58 vector<eventsetup::EventSetupRecordKey>::iterator it =
find(recordKeys.begin(), recordKeys.end(), recordKey);
60 if (it == recordKeys.end()) {
62 LogTrace(
"DTDQM|DTMonitorModule|DTDCSByLumiTask") <<
"Record DTHVStatusRcd does not exist " << std::endl;
72 for (
int wheel = -2; wheel <= 2; wheel++) {
73 stringstream wheel_str;
80 ibooker.
book1D(
"hActiveUnits" + wheel_str.str(),
"Active Untis x LS Wh" + wheel_str.str(), 2, 0.5, 2.5);
89 LogTrace(
"DTDQM|DTMonitorModule|DTDCSByLumiTask")
91 <<
" lumi processed by this job" << endl;
93 for (
int wheel = 0; wheel < 5; wheel++) {
104 vector<const DTLayer*>::const_iterator layersIt =
theDTGeom->layers().begin();
105 vector<const DTLayer*>::const_iterator layersEnd =
theDTGeom->layers().end();
107 for (; layersIt != layersEnd; ++layersIt) {
108 int wheel = (*layersIt)->id().wheel();
110 int nWiresLayer = (*layersIt)->specificTopology().channels();
112 int nActiveWires = nWiresLayer;
125 if (!dtHVStatus->
get((*layersIt)->id(), 0,
first,
last, flagA, flagC, flagS) && (flagA || flagC || flagS)) {
126 nActiveWires -= (last - first + 1);
129 if (!dtHVStatus->
get((*layersIt)->id(), 1,
first,
last, flagA, flagC, flagS) && (flagA || flagC || flagS)) {
130 nActiveWires -= (last - first + 1);
LuminosityBlockID id() const
std::pair< const char *, const std::type_info * > findType(const char *iClassName)
int get(int wheelId, int stationId, int sectorId, int slId, int layerId, int partId, int &fCell, int &lCell, int &flagA, int &flagC, int &flagS) const
get content
virtual void setCurrentFolder(std::string const &fullpath)
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
Begin Run.
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
bool getData(T &iHolder) const
edm::ESGetToken< DTHVStatus, DTHVStatusRcd > dtHVStatusToken_
~DTDCSByLumiTask() override
Destructor.
edm::ESHandle< DTGeometry > theDTGeom
edm::ESGetToken< DTGeometry, MuonGeometryRecord > dtGeometryToken_
void dqmEndLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &) override
By Lumi DCS DB Operation.
UseScope< MonitorElementData::Scope::LUMI > UseLumiScope
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
LuminosityBlockNumber_t luminosityBlock() const
void fillAvailableRecordKeys(std::vector< eventsetup::EventSetupRecordKey > &oToFill) const
clears the oToFill vector and then fills it with the keys for all available records ...
void dqmBeginLuminosityBlock(edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &) override
By Lumi DCS DB Operation.
DTDCSByLumiTask(const edm::ParameterSet &ps)
Constructor.
void analyze(const edm::Event &e, const edm::EventSetup &) override
Analyze.
std::string topFolder() const
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
std::vector< MonitorElement * > hActiveUnits