31 allowMissingCollections_(_ps.getUntrackedParameter<
bool>(
"allowMissingCollections")),
34 resetInterval_(_ps.getUntrackedParameter<double>(
"resetInterval")) {
36 std::bitset<ecaldqm::nCollections> hasTaskToRun;
43 throw cms::Exception(
"InvalidConfiguration") <<
"Non-task DQWorker " << worker->
getName() <<
" passed";
48 hasTaskToRun.set(iCol);
51 task->setTokens(collector);
58 if (hasTaskToRun[iCol])
69 for (
unsigned iCol(0); iCol <
schedule_.size(); iCol++)
75 if (commonParams.getUntrackedParameter<
bool>(
"onlineMode"))
89 desc.addUntracked(
"workerParameters", allWorkers);
95 desc.addUntracked<
bool>(
"allowMissingCollections",
true);
96 desc.addUntracked<
double>(
"resetInterval", 0.);
103 "ecaldqmGetSetupObjects",
104 "Getting EventSetup Objects");
126 std::shared_ptr<ecaldqm::EcalLSCache> tmpCache = std::make_shared<ecaldqm::EcalLSCache>();
129 "globalBeginLuminosityBlock");
134 tmpCache->lhcStatusSet_ =
false;
159 std::set<ecaldqm::DQWorker*> enabledTasks;
164 std::stringstream
ss;
172 ss << dcchItr->getRunType() <<
" ";
173 runType[dcchItr->id() - 1] = dcchItr->getRunType();
182 if (static_cast<ecaldqm::DQWorkerTask*>(worker)->filterRunType(
runType)) {
185 enabledTasks.insert(worker);
194 edm::LogWarning(
"EcalDQM") <<
"EcalRawDataCollection does not exist. No event-type filtering will be applied";
204 if (enabledTasks.find(worker) != enabledTasks.end()) {
208 bool ByLumiResetSwitch = (lumiCache->ByLumiPlotsResetSwitches).at(worker->
getName());
209 bool lhcStatusSet = lumiCache->lhcStatusSet_;
211 (lumiCache->ByLumiPlotsResetSwitches)[worker->
getName()] =
false;
212 lumiCache->lhcStatusSet_ = lhcStatusSet;
218 for (
unsigned iSch(0); iSch <
schedule_.size(); iSch++) {
226 if (enabledTasks.find(worker) != enabledTasks.end())
227 static_cast<ecaldqm::DQWorkerTask*>(worker)->endEvent(_evt, _es);
static void fillDescriptions(edm::ParameterSetDescription &)
std::shared_ptr< ecaldqm::EcalLSCache > globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override
void formSchedule(std::vector< ecaldqm::Collections > const &, edm::ParameterSet const &)
dispatcher processEvent(e, inputTag, standby)
std::string const & getName() const
void executeOnWorkers_(FuncOnWorker, std::string const &, std::string const &="", int=1) const
void ecaldqmEndRun(edm::Run const &, edm::EventSetup const &)
ParameterSet const & getParameterSet(std::string const &) const
std::vector< T >::const_iterator const_iterator
edm::EDGetToken collectionTokens_[ecaldqm::nCollections]
ParameterDescriptionNode * addNode(ParameterDescriptionNode const &node)
virtual void releaseMEs()
ParameterSet getUntrackedParameterSet(std::string const &name, ParameterSet const &defaultValue) const
bool getByToken(EDGetToken token, Handle< PROD > &result) const
static void fillDescriptions(edm::ParameterSetDescription &)
LuminosityBlockNumber_t luminosityBlock() const
U second(std::pair< T, U > const &p)
void analyze(edm::Event const &, edm::EventSetup const &) override
void setEventNumber(edm::EventNumber_t _e)
void addDefault(ParameterSetDescription const &psetDescription)
std::string const collectionName[nCollections]
void(EcalDQMonitorTask::* Processor)(edm::Event const &, ecaldqm::Collections, std::set< ecaldqm::DQWorker *> const &)
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
void ecaldqmBeginRun(edm::Run const &, edm::EventSetup const &)
#define DEFINE_FWK_MODULE(type)
void dqmEndRun(edm::Run const &, edm::EventSetup const &) override
const_iterator begin() const
LuminosityBlock const & getLuminosityBlock() const
virtual void bookMEs(DQMStore::IBooker &)
std::string const moduleName_
const_iterator end() const
void ecaldqmBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const
Log< level::Info, false > LogInfo
std::vector< std::pair< Processor, ecaldqm::Collections > > schedule_
void dqmBeginRun(edm::Run const &, edm::EventSetup const &) override
LuminosityBlockIndex index() const
void setTokens(edm::ConsumesCollector &)
void ecaldqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &)
EcalDQMonitorTask(edm::ParameterSet const &)
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
void setSetupObjects(edm::EventSetup const &)
Log< level::Warning, false > LogWarning
static void fillDescriptions(edm::ConfigurationDescriptions &)
EventNumber_t event() const
void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override