17 m_hitname(), m_nbins(500), m_scalefact(), m_maxlumi(10.), m_binmax(), m_labels(), m_nmultvslumi(), m_nmultvslumiprof(), m_subdirs() { }
24 m_nbins(iConfig.getUntrackedParameter<
int>(
"numberOfBins",500)),
26 m_maxlumi(iConfig.getUntrackedParameter<double>(
"maxLumi",10.)),
30 std::vector<edm::ParameterSet>
31 wantedsubds(iConfig.
getUntrackedParameter<std::vector<edm::ParameterSet> >(
"wantedSubDets",std::vector<edm::ParameterSet>()));
33 for(std::vector<edm::ParameterSet>::iterator ps=wantedsubds.begin();ps!=wantedsubds.end();++ps) {
34 m_labels[ps->getParameter<
unsigned int>(
"detSelection")] = ps->getParameter<
std::string>(
"detLabel");
35 m_binmax[ps->getParameter<
unsigned int>(
"detSelection")] = ps->getParameter<
int>(
"binMax");
44 for(std::map<unsigned int,std::string>::const_iterator lab=
m_labels.begin();lab!=
m_labels.end();lab++) {
46 const unsigned int i = lab->first;
const std::string slab = lab->second;
75 for(std::map<unsigned int,std::string>::const_iterator lab=
m_labels.begin();lab!=
m_labels.end();lab++) {
77 const unsigned int i = lab->first;
const std::string slab = lab->second;
81 <<
" not configured: " << trnumb.
nstrips(i) <<
" used";
89 for(std::map<unsigned int,std::string>::const_iterator lab=
m_labels.begin();lab!=
m_labels.end();++lab) {
91 const int i = lab->first;
const std::string slab = lab->second;
100 sprintf(name,
"n%sdigivslumi",slab.c_str());
101 sprintf(title,
"%s %s multiplicity vs BX lumi",slab.c_str(),
m_hitname.c_str());
103 m_nmultvslumi[
i]->GetXaxis()->SetTitle(
"BX lumi [10^{30}cm^{-2}s^{-1}]"); m_nmultvslumi[
i]->GetYaxis()->SetTitle(
"Number of Hits");
104 sprintf(name,
"n%sdigivslumiprof",slab.c_str());
106 m_nmultvslumiprof[
i]->GetXaxis()->SetTitle(
"BX lumi [10^{30}cm^{-2}s^{-1}]"); m_nmultvslumiprof[
i]->GetYaxis()->SetTitle(
"Number of Hits");
109 edm::LogInfo(
"RunHistos") <<
"Pseudo-booking run histos " << slab.c_str();
110 sprintf(name,
"n%sdigivslumivsbxprofrun",slab.c_str());
111 sprintf(title,
"%s %s multiplicity vs BX lumi vs BX",slab.c_str(),
m_hitname.c_str());
126 for(std::map<unsigned int,std::string>::const_iterator lab=
m_labels.begin();lab!=
m_labels.end();++lab) {
127 const int i = lab->first;
const std::string slab = lab->second;
147 for(std::map<unsigned int,int>::const_iterator digi=ndigi.begin();digi!=ndigi.end();digi++) {
149 const unsigned int i=digi->first;
T getUntrackedParameter(std::string const &, T const &) const
std::map< unsigned int, TFileDirectory * > m_subdirs
void book(const std::string dirname, const std::map< unsigned int, std::string > &labels, edm::ConsumesCollector &&iC)
std::map< unsigned int, RunHistogramManager * > m_fhm
bool getByToken(EDGetToken token, Handle< PROD > &result) const
std::map< unsigned int, int > m_binmax
std::map< unsigned int, std::string > m_labels
DigiLumiCorrHistogramMaker(edm::ConsumesCollector &&iC)
int bunchCrossing() const
~DigiLumiCorrHistogramMaker()
float lumiValue(AlgoType algo, unsigned int bx) const
int nstrips(const DetId &detid) const
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
std::map< unsigned int, TProfile2D ** > m_nmultvslumivsbxprofrun
std::map< unsigned int, TProfile * > m_nmultvslumiprof
void fill(const edm::Event &iEvent, const std::map< unsigned int, int > &ndigi)
LuminosityBlock const & getLuminosityBlock() const
TFileDirectory mkdir(const std::string &dir, const std::string &descr="")
create a new subdirectory
std::map< unsigned int, TH2F * > m_nmultvslumi
TFileDirectory mkdir(const std::string &dir, const std::string &descr="")
create a new subdirectory
edm::EDGetTokenT< LumiDetails > m_lumiProducerToken
void beginRun(const edm::Run &iRun)