18 #include <TProfile2D.h>
30 LogInfo(
"TriggerDQM")<<
"[TriggerDQM]: ending... ";
43 monitorName_ = parameters_.getUntrackedParameter<
string>(
"monitorName",
"");
45 prescaleLS_ = parameters_.getUntrackedParameter<
int>(
"prescaleLS", -1);
47 prescaleEvt_ = parameters_.getUntrackedParameter<
int>(
"prescaleEvt", -1);
49 output_dir_ = parameters_.getUntrackedParameter<
string>(
"output_dir",
"");
51 input_dir_ = parameters_.getUntrackedParameter<
string>(
"input_dir",
"");
54 verbose_ = parameters_.getUntrackedParameter<
bool>(
"verbose",
false);
56 m_runInEventLoop = parameters_.getUntrackedParameter<
bool>(
"runInEventLoop",
false);
57 m_runInEndLumi = parameters_.getUntrackedParameter<
bool>(
"runInEndLumi",
false);
58 m_runInEndRun = parameters_.getUntrackedParameter<
bool>(
"runInEndRun",
false);
59 m_runInEndJob = parameters_.getUntrackedParameter<
bool>(
"runInEndJob",
false);
70 LogInfo(
"TriggerDQM")<<
"[TriggerDQM]: Begin Job";
75 dbe_->setCurrentFolder(output_dir_);
77 m_deadChannels =
dbe_->book2D(
"RPCTF_deadchannels",
81 m_noisyChannels =
dbe_->book2D(
"RPCTF_noisychannels",
82 "RPCTF noisy channels",
100 if (verbose_)
std::cout <<
"L1TRPCTFClient::endLuminosityBlock" << std::endl;
102 if (m_runInEndLumi) {
113 if (prescaleEvt_ < 1)
115 if (prescaleEvt_ > 0 && counterEvt_ % prescaleEvt_ != 0)
121 if (m_runInEventLoop) {
152 dbe_->setCurrentFolder(input_dir_);
157 =
dbe_->get( (input_dir_+
"/RPCTF_muons_eta_phi_bx0").c_str() );
162 qreport = me->
getQReport(
"DeadChannels_RPCTF_2D");
164 vector<dqm::me_util::Channel> badChannels = qreport->
getBadChannels();
165 for (vector<dqm::me_util::Channel>::iterator channel = badChannels.begin();
166 channel != badChannels.end();
169 m_deadChannels->setBinContent((*channel).getBinX(),
170 (*channel).getBinY(),
175 qreport = me->
getQReport(
"HotChannels_RPCTF_2D");
177 vector<dqm::me_util::Channel> badChannels = qreport->
getBadChannels();
178 for (vector<dqm::me_util::Channel>::iterator channel = badChannels.begin();
179 channel != badChannels.end();
183 m_noisyChannels->setBinContent((*channel).getBinX(), 100);
195 std::vector<string> meVec =
dbe_->getMEs();
196 for (vector<string>::const_iterator it = meVec.begin(); it != meVec.end(); it++) {
202 std::vector<QReport *> Qtest_map = me->
getQReports();
204 if (Qtest_map.size() > 0) {
205 std::cout <<
"Test: " << full_path << std::endl;
206 for (std::vector<QReport *>::const_iterator it = Qtest_map.begin();
207 it != Qtest_map.end();
211 <<
" Name "<< (*it)->getQRName()
212 <<
" Status " << (*it)->getStatus()
215 std::vector<dqm::me_util::Channel> badChannels=(*it)->getBadChannels();
217 vector<dqm::me_util::Channel>::iterator badchsit = badChannels.begin();
218 while(badchsit != badChannels.end())
220 int ix = (*badchsit).getBinX();
221 int iy = (*badchsit).getBinY();
222 std::cout <<
"(" << ix <<
","<< iy <<
") ";
static AlgebraicMatrix initialize()
const QReport * getQReport(const std::string &qtname) const
get QReport corresponding to <qtname> (null pointer if QReport does not exist)
void beginRun(const edm::Run &r, const edm::EventSetup &c)
BeginRun.
L1TRPCTFClient(const edm::ParameterSet &ps)
Constructor.
virtual ~L1TRPCTFClient()
Destructor.
void beginJob(void)
BeginJob.
const std::vector< DQMChannel > & getBadChannels(void) const
void analyze(const edm::Event &e, const edm::EventSetup &c)
Fake Analyze.
std::vector< QReport * > getQReports(void) const
get map of QReports
void endLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
DQM Client Diagnostic.
void beginLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context)
void endRun(const edm::Run &r, const edm::EventSetup &c)
EndRun.