32 edm::LogInfo(
"SiStripPedestalsDQMService") <<
"[SiStripPedestalsDQMService::SiStripPedestalsDQMService]";
37 edm::LogInfo(
"SiStripPedestalsDQMService") <<
"[SiStripPedestalsDQMService::~SiStripPedestalsDQMService]";
42 std::cout <<
"SiStripPedestalsDQMService::readPedestals" << std::endl;
51 uint32_t stripsPerApv = 128;
59 MEs.erase(std::remove_if(MEs.begin(), MEs.end(),
61 return std::string::npos ==
ME->getName().find(
"PedsPerStrip__det__");
65 for (
const auto& detInfo :
reader.getAllData() ) {
72 std::string MEname(
"PedsPerStrip__det__"+std::to_string(detInfo.first));
74 if( ime->getName() == MEname ) {
84 TH1F*
histo = mE->getTH1F();
87 uint32_t nBinsX = histo->GetXaxis()->GetNbins();
89 if ( nBinsX != stripsPerApv*(detInfo.second.nApvs) ) {
90 std::cout <<
"ERROR: number of bin = " << nBinsX <<
" != number of strips = " << stripsPerApv*(detInfo.second.nApvs) << std::endl;
95 for ( uint32_t iBin = 1; iBin <= nBinsX; ++iBin ) {
97 m_obj.
setData( histo->GetBinContent(iBin), theSiStripVector );
100 std::cout <<
"ERROR: histo = " << histo << std::endl;
103 std::cout <<
"ERROR: ME = " << mE << std::endl;
106 if ( theSiStripVector.empty() ) {
107 for(
unsigned short j=0; j<128*detInfo.second.nApvs; ++j){
112 if ( !
m_obj.
put(detInfo.first, theSiStripVector) )
113 edm::LogError(
"SiStripPedestalsFakeESSource::produce ")<<
" detid already exists"<<std::endl;
T getUntrackedParameter(std::string const &, T const &) const
#define DEFINE_FWK_MODULE(type)
~SiStripPopConPedestalsHandlerFromDQM() override
void dqmEndJob(DQMStore::IBooker &booker, DQMStore::IGetter &getter) override
SiStripPopConPedestalsHandlerFromDQM(const edm::ParameterSet &iConfig)
std::vector< uint16_t > InputVector
bool put(const uint32_t &detID, InputVector &input)
std::vector< MonitorElement * > getAllContents(const std::string &path, uint32_t runNumber=0, uint32_t lumi=0)
void setData(float ped, InputVector &vped)
std::string fullPath() const
SiStripPedestals * getObj() const override