34 evaluateTime_(_ps.getUntrackedParameter<bool>(
"evaluateTime")),
35 allowMissingCollections_(_ps.getUntrackedParameter<bool>(
"allowMissingCollections"))
42 std::multimap<ecaldqm::Collections, ecaldqm::Collections> dependencies;
44 for(std::vector<std::string>::iterator tItr(taskNames.begin()); tItr != taskNames.end(); ++tItr){
49 ecaldqm::DQWorker* worker(factory(taskParams, mePaths.getUntrackedParameterSet(*tItr)));
61 std::vector<std::pair<ecaldqm::Collections, ecaldqm::Collections> >
const& dep(task->
getDependencies());
62 for(std::vector<std::pair<ecaldqm::Collections, ecaldqm::Collections> >::const_iterator depItr(dep.begin()); depItr != dep.end(); ++depItr)
63 dependencies.insert(*depItr);
68 std::vector<ecaldqm::Collections> usedCollections;
73 taskLists_[iCol] = std::vector<ecaldqm::DQWorkerTask*>();
77 for(std::vector<ecaldqm::DQWorkerTask*>::iterator wItr(
workers_.begin()); wItr !=
workers_.end(); ++wItr){
78 if((*wItr)->runsOn(iCol)){
94 for(
unsigned iCol(0); iCol <
schedule_.size(); iCol++)
102 for(std::vector<ecaldqm::DQWorkerTask *>::iterator wItr(
workers_.begin()); wItr !=
workers_.end(); ++wItr)
128 for(std::vector<ecaldqm::DQWorkerTask*>::iterator wItr(
workers_.begin()); wItr !=
workers_.end(); ++wItr){
144 for(std::vector<ecaldqm::DQWorkerTask*>::iterator wItr(
workers_.begin()); wItr !=
workers_.end(); ++wItr){
150 std::stringstream ss;
152 ss <<
"************** " <<
moduleName_ <<
" **************" << std::endl;
153 ss <<
" Mean time consumption of the modules" << std::endl;
154 ss <<
"____________________________________" << std::endl;
155 for(std::vector<ecaldqm::DQWorkerTask*>::iterator wItr(
workers_.begin()); wItr !=
workers_.end(); ++wItr){
157 ss << std::setw(20) << std::setfill(
' ') << task->
getName() <<
"| " << (
taskTimes_[task] /
ievt_) << std::endl;
166 for(std::vector<ecaldqm::DQWorkerTask*>::iterator wItr(
workers_.begin()); wItr !=
workers_.end(); ++wItr){
175 for(std::vector<ecaldqm::DQWorkerTask*>::iterator wItr(
workers_.begin()); wItr !=
workers_.end(); ++wItr){
188 throw cms::Exception(
"ObjectNotFound") <<
"EcalRawDataCollection does not exist";
191 std::vector<short>
runType(54, -1);
193 runType[dcchItr->id() - 1] = dcchItr->getRunType();
196 bool atLeastOne(
false);
201 for(std::vector<ecaldqm::DQWorkerTask*>::iterator wItr(
workers_.begin()); wItr !=
workers_.end(); ++wItr){
220 if(!atLeastOne)
return;
223 for(
unsigned iSch(0); iSch <
schedule_.size(); iSch++){
229 for(std::vector<ecaldqm::DQWorkerTask *>::iterator wItr(
workers_.begin()); wItr !=
workers_.end(); ++wItr){
T getUntrackedParameter(std::string const &, T const &) const
void(EcalDQMonitorTask::* Processor)(edm::Event const &, ecaldqm::Collections)
std::vector< ecaldqm::DQWorkerTask * > workers_
std::map< ecaldqm::DQWorkerTask *, bool > enabled_
void formSchedule_(std::vector< ecaldqm::Collections > const &, std::multimap< ecaldqm::Collections, ecaldqm::Collections > const &)
void setTrigTowerMap(const EcalTrigTowerConstituentsMap *)
virtual void endEvent(const edm::Event &, const edm::EventSetup &)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
std::vector< EcalDCCHeaderBlock >::const_iterator const_iterator
edm::EDGetToken collectionTokens_[ecaldqm::nCollections]
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
ParameterSet getUntrackedParameterSet(std::string const &name, ParameterSet const &defaultValue) const
void analyze(edm::Event const &, edm::EventSetup const &)
virtual void setVerbosity(int _verbosity)
virtual void setInitialized(bool _init)
U second(std::pair< T, U > const &p)
void setElectronicsMap(const EcalElectronicsMapping *)
std::map< ecaldqm::DQWorkerTask *, double > taskTimes_
void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &)
void addDefault(ParameterSetDescription const &psetDescription)
std::string const collectionName[nCollections]
virtual bool runsOn(unsigned)
virtual std::string const & getName()
virtual bool isInitialized()
virtual void beginEvent(const edm::Event &, const edm::EventSetup &)
virtual void beginLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &)
virtual void endLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &)
void registerCollection(ecaldqm::Collections, edm::InputTag const &)
DQWorker *(* WorkerFactory)(const edm::ParameterSet &, const edm::ParameterSet &)
static WorkerFactory findFactory(const std::string &)
virtual bool filterRunType(const std::vector< short > &)
virtual void endRun(const edm::Run &, const edm::EventSetup &)
std::vector< std::pair< Processor, ecaldqm::Collections > > schedule_
void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &)
T const * product() const
std::vector< ecaldqm::DQWorkerTask * > taskLists_[ecaldqm::nCollections]
virtual const std::vector< std::pair< Collections, Collections > > & getDependencies()
void beginRun(edm::Run const &, edm::EventSetup const &)
EcalDQMonitorTask(edm::ParameterSet const &)
void endRun(edm::Run const &, edm::EventSetup const &)
static void fillDescriptions(edm::ConfigurationDescriptions &)