9 me1onX_ ( iConfig.getParameter<
bool>(
"me1onX") )
10 , meXpset_ ( me1onX_ ? getHistoPSet(iConfig.getParameter<
edm::
ParameterSet>(
"me1") ) : getHistoPSet(iConfig.getParameter<
edm::
ParameterSet>(
"me2") ) )
11 , meYpset_ ( me1onX_ ? getHistoPSet(iConfig.getParameter<
edm::
ParameterSet>(
"me2") ) : getHistoPSet(iConfig.getParameter<
edm::
ParameterSet>(
"me1") ) )
12 , mepset_ ( getOutputHistoPSet (iConfig.getParameter<
edm::
ParameterSet>(
"me") ) )
14 edm::LogInfo(
"DQMCorrelationClient") <<
"Constructor DQMCorrelationClient::DQMCorrelationClient " << std::endl;
50 edm::LogInfo(
"DQMCorrelationClient") <<
"DQMCorrelationClient::beginJob " << std::endl;
84 TAxis* axis = (meX->
getTH1()->GetYaxis());
85 for (
int i=1;
i<=axis->GetNbins(); ++
i )
90 TAxis* axis = (meY->
getTH1()->GetYaxis());
91 for (
int i=1;
i<=axis->GetNbins(); ++
i )
140 size_t size = x->GetXaxis()->GetNbins();
142 std::vector<double> xvalue;
143 std::vector<int> xbinvalue;
144 for (
size_t ibin=1; ibin <=
size; ++ibin ) {
146 if ( x->GetBinContent(ibin) == 0. )
continue;
147 xvalue.push_back ( x->GetBinContent(ibin) );
148 xbinvalue.push_back ( x->GetXaxis()->GetBinCenter(ibin) );
151 for (
size_t i=0;
i < xbinvalue.size(); ++
i ) {
152 int ybin = y->GetXaxis()->FindBin(xbinvalue[
i]);
153 double yvalue = y->GetBinContent(ybin);
164 edm::LogInfo(
"DQMCorrelationClient") <<
"DQMCorrelationClient::endLumi " << std::endl;
171 pset.
add<
bool>(
"profileX",
true);
179 pset.
add<
bool>(
"doXaxis",
true);
180 pset.
add<
int>(
"nbinsX", 2500);
181 pset.
add<
double>(
"xminX", 0.);
182 pset.
add<
double>(
"xmaxX",2500.);
183 pset.
add<
bool>(
"doYaxis",
true);
184 pset.
add<
int>(
"nbinsY", 2500);
185 pset.
add<
double>(
"xminY", 0.);
186 pset.
add<
double>(
"xmaxY",2500.);
193 desc.
add<
bool>(
"me1onX",
true);
207 descriptions.
add(
"dqmCorrelationClient", desc);
MonitorElement * correlation_
T getParameter(std::string const &) const
void setAxisTitle(MonitorElement *meX, MonitorElement *meY)
static OutputMEPSet getOutputHistoPSet(edm::ParameterSet pset)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
static void fillMePSetDescription(edm::ParameterSetDescription &pset)
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override
void dqmEndLuminosityBlock(DQMStore::IBooker &, DQMStore::IGetter &, edm::LuminosityBlock const &, edm::EventSetup const &) override
TH1 * getTH1(MonitorElement *me, bool profileX)
#define DEFINE_FWK_MODULE(type)
void setCurrentFolder(std::string const &fullpath)
static MEPSet getHistoPSet(edm::ParameterSet pset)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
MonitorElement * get(std::string const &path)
MonitorElement * book2D(Args &&...args)
DQMCorrelationClient(const edm::ParameterSet &ps)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
int getNbinsY() const
get # of bins in Y-axis
static void fillOutputMePSetDescription(edm::ParameterSetDescription &pset)
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
Kind kind() const
Get the type of the monitor element.