CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes
EcalLaserCondTools Class Reference

#include <EcalLaserCondTools.h>

Inheritance diagram for EcalLaserCondTools:
edm::EDAnalyzer edm::EDConsumerBase

Classes

class  CorrReader
 
class  FileReader
 

Public Member Functions

void analyze (const edm::Event &evt, const edm::EventSetup &es) override
 
 EcalLaserCondTools (const edm::ParameterSet &)
 
 ~EcalLaserCondTools () override
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void dbToAscii (const edm::EventSetup &es)
 
void fillDb (CorrReader &r)
 
void processIov (CorrReader &r, int t1, int t2[nLmes], int t3)
 

Static Private Member Functions

static std::string timeToString (time_t t)
 
static std::string toNth (int n)
 

Private Attributes

edm::Service< cond::service::PoolDBOutputServicedb_
 
FILE * eventList_
 
std::string eventListFileName_
 
FILE * ferr_
 
std::vector< std::string > fnames_
 
FILE * fout_
 
int fromTime_
 
double maxP_
 
double minP_
 
std::string mode_
 
int nIovs_
 
int skipIov_
 
int toTime_
 
int verb_
 

Static Private Attributes

static constexpr int nLmes = 92
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsInputProcessBlocks ()
 
static bool wantsProcessBlocks ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Detailed Description

Definition at line 23 of file EcalLaserCondTools.h.

Constructor & Destructor Documentation

◆ EcalLaserCondTools()

EcalLaserCondTools::EcalLaserCondTools ( const edm::ParameterSet ps)

Constructor

Parameters
psanalyser configuration

Definition at line 24 of file EcalLaserCondTools.cc.

25  : fout_(nullptr),
26  eventList_(nullptr),
27  eventListFileName_(ps.getParameter<string>("eventListFile")),
28  verb_(ps.getParameter<int>("verbosity")),
29  mode_(ps.getParameter<string>("mode")),
30  fnames_(ps.getParameter<vector<string> >("laserCorrectionAsciiFiles")),
31  skipIov_(ps.getParameter<int>("skipIov")),
32  nIovs_(ps.getParameter<int>("nIovs")),
33  fromTime_(ps.getParameter<int>("fromTime")),
34  toTime_(ps.getParameter<int>("toTime")),
35  minP_(ps.getParameter<double>("transparencyMin")),
36  maxP_(ps.getParameter<double>("transparencyMax")) {
37  ferr_ = fopen("corr_errors.txt", "w");
38  fprintf(ferr_, "#t1\tdetid\tp1\tp2\tp3");
39 
40  if (!eventListFileName_.empty()) {
41  eventList_ = fopen(eventListFileName_.c_str(), "r");
42  if (eventList_ == nullptr)
43  throw cms::Exception("User") << "Failed to open file " << eventListFileName_ << "\n";
44  }
45 }

References eventList_, eventListFileName_, Exception, and ferr_.

◆ ~EcalLaserCondTools()

EcalLaserCondTools::~EcalLaserCondTools ( )
override

Destructor

Definition at line 47 of file EcalLaserCondTools.cc.

47  {
48  if (ferr_)
49  fclose(ferr_);
50  if (fout_)
51  fclose(fout_);
52 }

References ferr_, and fout_.

Member Function Documentation

◆ analyze()

void EcalLaserCondTools::analyze ( const edm::Event evt,
const edm::EventSetup es 
)
overridevirtual

Called by CMSSW event loop

Parameters
evtthe event
esevents setup

Implements edm::EDAnalyzer.

Definition at line 54 of file EcalLaserCondTools.cc.

54  {
55  static bool done = false;
56 
57  if (mode_ == "ascii_file_to_db") {
58  if (done)
59  return;
60  if (verb_ > 2)
61  cout << "ascii_file_to_db mode" << endl;
62  if (!db_.isAvailable()) {
63  throw cms::Exception("CondDBAccess") << "Failed to connect to PoolDBOutputService\n";
64  }
65  FileReader corrReader(fnames_);
66  corrReader.setVerbosity(verb_);
67  fillDb(corrReader);
68  } else if (mode_ == "db_to_ascii_file") {
69  dbToAscii(es);
70  } else {
71  cms::Exception("InvalidParam") << "Value of parameter mode is not valid. Expecting ascii_file_to_db or read";
72  }
73 }

References gather_cfg::cout, db_, dbToAscii(), fileCollector::done, Exception, fillDb(), fnames_, edm::Service< T >::isAvailable(), mode_, EcalLaserCondTools::CorrReader::setVerbosity(), and verb_.

◆ dbToAscii()

void EcalLaserCondTools::dbToAscii ( const edm::EventSetup es)
private

Definition at line 422 of file EcalLaserCondTools.cc.

422  {
424  es.get<EcalLaserAPDPNRatiosRcd>().get(hCorr);
425 
426  const EcalLaserAPDPNRatios* corr = hCorr.product();
427 
428  const EcalLaserAPDPNRatios::EcalLaserAPDPNRatiosMap& p = corr->getLaserMap();
429  const EcalLaserAPDPNRatios::EcalLaserTimeStampMap& t = corr->getTimeMap();
430 
431  if (t.size() != EcalLaserCondTools::nLmes)
432  throw cms::Exception("LasCor") << "Unexpected number time parameter triplets\n";
433 
434  if (fout_ == nullptr) {
435  fout_ = fopen("corr_dump.txt", "w");
436  if (fout_ == nullptr)
437  throw cms::Exception("LasCor") << "Failed to create file corr_dump.txt\n";
438  }
439 
440  unsigned t1 = t[0].t1.unixTime();
441  unsigned t3 = t[0].t3.unixTime();
442  fprintf(fout_, "T %d\t%d", t1, t3);
443 
444  if (verb_)
445  cout << "Processing IOV " << t1 << " - " << t3 << "(" << timeToString(t1) << " - " << timeToString(t3) << "\n";
446 
447  for (unsigned i = 0; i < t.size(); ++i) {
448  if (t[i].t1.unixTime() != t1 || t[i].t3.unixTime() != t3) {
449  throw cms::Exception("LasCor") << "Inconsitency in t1, t3: "
450  << "t1(lme 1) =" << t1 << ", t1(lme " << (i + 1) << ") = " << t[i].t1.unixTime()
451  << ", t3(lme 1) =" << t3 << ", t3(lme " << (i + 1) << ") = " << t[i].t3.unixTime()
452  << "\n";
453  }
454  fprintf(fout_, "\t%d", t[i].t2.unixTime());
455  }
456  fputc('\n', fout_);
457  fflush(fout_);
458 
459  for (int ieta = -EBDetId::MAX_IETA; ieta <= EBDetId::MAX_IETA; ++ieta) {
460  if (ieta == 0)
461  continue;
462  for (int iphi = EBDetId::MIN_IPHI; iphi <= EBDetId::MAX_IPHI; ++iphi) {
463  if (EBDetId::validDetId(ieta, iphi)) {
464  EBDetId detId(ieta, iphi);
465  EcalLaserAPDPNRatios::EcalLaserAPDPNpair corr = p.barrel(detId.hashedIndex());
466  fprintf(fout_, "P %d\t%f\t%f\t%f\n", (int)detId, corr.p1, corr.p2, corr.p3);
467  }
468  }
469  }
470 
471  for (int iZ = 1; iZ >= -1; --iZ) {
472  for (int iX = EEDetId::IX_MIN; iX <= EEDetId::IX_MAX; ++iX) {
473  for (int iY = EEDetId::IY_MIN; iY <= EEDetId::IY_MAX; ++iY) {
474  if (EEDetId::validDetId(iX, iY, iZ)) {
475  EEDetId detId(iX, iY, iZ);
476  EcalLaserAPDPNRatios::EcalLaserAPDPNpair corr = p.endcap(detId.hashedIndex());
477  fprintf(fout_, "P %d\t%f\t%f\t%f\n", (int)detId, corr.p1, corr.p2, corr.p3);
478  }
479  }
480  }
481  }
482 }

References alignCSCRings::corr, gather_cfg::cout, Exception, fout_, edm::EventSetup::get(), get, EBDetId::hashedIndex(), EEDetId::hashedIndex(), mps_fire::i, LEDCalibrationChannels::ieta, LEDCalibrationChannels::iphi, EEDetId::IX_MAX, EEDetId::IX_MIN, EEDetId::IY_MAX, EEDetId::IY_MIN, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, EBDetId::MIN_IPHI, nLmes, AlCaHLTBitMon_ParallelJobs::p, edm::ESHandle< T >::product(), submitPVValidationJobs::t, RandomServiceHelper::t1, RandomServiceHelper::t2, RandomServiceHelper::t3, timeToString(), EBDetId::validDetId(), EEDetId::validDetId(), and verb_.

Referenced by analyze().

◆ fillDb()

void EcalLaserCondTools::fillDb ( CorrReader r)
private

Definition at line 75 of file EcalLaserCondTools.cc.

75  {
76  int iIov = 0;
77  int processedIovs = 0;
78  if (verb_ > 2)
79  cout << "Starting filling DB...\n";
80  int t1 = 0;
81  int t3 = 0;
82  int t2[nLmes];
83 
84  int prevT1 = 0;
85  int prevT3 = 0;
86  int prevT = 0;
87  int t = 0;
88  if (eventList_) {
89  int iline = 0;
90  while (!feof(eventList_)) {
91  //skips comment lines:
92  char c;
93  while (fscanf(eventList_, " %1[#]%*[^\n]\n", &c) == 1)
94  ++iline;
95 
96  int n = fscanf(eventList_, "%*d %*d %*d %d%*[^\n]\n", &t);
97  if (verb_ > 1)
98  cout << "Event time: t = " << t << ", " << timeToString(t) << "\n";
99  ++iline;
100  if (n != 1)
101  throw cms::Exception("User") << "Syntax error in event list file " << eventListFileName_ << " at line " << iline
102  << " " << n << " "
103  << ".\n";
104  if (t < prevT)
105  throw cms::Exception("User") << "Events in the event list file " << eventListFileName_
106  << " are not ordered in increased time as required! See line " << iline << "\n";
107  if (t == 0)
108  throw cms::Exception("User") << "Found an unexpected t = 0 time value "
109  "in the event list file"
110  << eventListFileName_ << " at line " << iline << "!\n";
111  //Look for IOV:
112  bool iovFound = true;
113  if (t <= t3) { //IOV already inserted for previous event.
114  if (verb_ > 1)
115  cout << "Event in same IOV than previous one.\n";
116  continue;
117  }
118 
119  while ((iovFound = r.readTime(t1, t2, t3)) && t3 < t) /*NOP*/
120  ;
121 
122  if (iovFound) {
123  if (t1 < prevT1 && t3 < prevT3)
124  throw cms::Exception("User")
125  << "IOVs in the correction ascii file are not ordered in increased time as required!\n";
126  else if (t1 < prevT1 || t3 < prevT3)
127  throw cms::Exception("User") << "Found interleaved IOVs in the correction ascii file!\n";
128  processIov(r, t1, t2, t3);
129  } else {
130  cout << "Warning: event beyond last IOV t3. Event time: " << timeToString(t)
131  << ". Last IOV t3: " << timeToString(t3) << "\n";
132  }
133  }
134  } else
135  while (r.readTime(t1, t2, t3)) {
136  ++iIov;
137  if (iIov <= skipIov_) {
138  std::cout << "Skipping IOV " << iIov << "\n";
139  continue;
140  } else if (processedIovs >= nIovs_) {
141  std::cout << "Requested number of IOVs, " << nIovs_ << ", processed.\n";
142  return;
143  } else {
144  processIov(r, t1, t2, t3);
145  ++processedIovs;
146  }
147  }
148 }

References HltBtagPostValidation_cff::c, gather_cfg::cout, eventList_, eventListFileName_, Exception, ntuplemaker::iline, dqmiodumpmetadata::n, nIovs_, nLmes, processIov(), alignCSCRings::r, skipIov_, submitPVValidationJobs::t, RandomServiceHelper::t1, RandomServiceHelper::t2, RandomServiceHelper::t3, timeToString(), and verb_.

Referenced by analyze().

◆ processIov()

void EcalLaserCondTools::processIov ( CorrReader r,
int  t1,
int  t2[nLmes],
int  t3 
)
private

Definition at line 150 of file EcalLaserCondTools.cc.

150  {
151  static int iIov = 0;
152  ++iIov;
153 
154  // FILE* fdebug = 0;
155  // if(i==) fdebug = fopen("debug.txt", "w");
156 
157  // if(iIov <= skipIov_) { std::cout << "Skipping IOV " << iIov << "\n"; return; }
158 
159  cond::Time_t iovStart = 0;
160 
161  if (verb_ > 1) {
162  cout << "t1:" << t1 << "(" << timeToString(t1) << ") \n"
163  << "t3: " << t3 << "(" << timeToString(t3) << ")\nt2-t1: ";
164  for (int i = 0; i < EcalLaserCondTools::nLmes; ++i)
165  cout << t2[i] - t1 << "\t";
166  cout << "\n";
167  }
168  if (t1 < fromTime_) {
169  std::cout << "Skipping IOV " << iIov << ", "
170  << ", which is before 'fromTime'," << timeToString(fromTime_) << "(" << fromTime_ << ").\n";
171  return;
172  }
173 
174  // if(toTime_!=-1 && t2 < toTime_) { std::cout << "Skipping IOV " << iIov << ", " << ", which is beyond 'toTime',"
175  // << timeToString(toTime_) << "(" << toTime_ << ").\n"; return; }
176 
177  if (t1 == 0) {
178  std::cout << "Skipping IOV with t1 = 0"
179  << "\n";
180  return;
181  }
182 
184 
186  iovStart = uint64_t(t1) << 32;
187  for (size_t i = 0; i < EcalLaserCondTools::nLmes; ++i) {
188  t.t1 = edm::Timestamp(uint64_t(t1) << 32);
189  t.t2 = edm::Timestamp(uint64_t(t2[i]) << 32);
190  t.t3 = edm::Timestamp(uint64_t(t3) << 32);
191  corrSet->setTime(i, t);
192  }
193 
194  constexpr int ncrystals = 75848;
195  std::set<int> detidList;
196  for (int i = 0; i < ncrystals; ++i) {
197  DetId detid;
198  //EcalLaserAPDPNRatios::EcalLaserAPDPNpair corr = {0, 0, 0};
200  if (verb_ > 2)
201  cout << "Reading " << toNth(i + 1) << " crystal\n";
202  if (!r.readPs(detid, corr)) {
203  throw cms::Exception("LasCor") << "Failed to read " << toNth(i + 1) << " crystal correction.\n";
204  }
205 
206  pair<std::set<int>::iterator, bool> res = detidList.insert(int(detid));
207 
208  if (!res.second) { //detid already processed
209  std::cout << "Duplicate det id, for IOV " << iIov << " t1 = " << t1 << " detid = " << int(detid) << endl;
210  }
211 
212  if (!isfinite(corr.p1) || !isfinite(corr.p2) || !isfinite(corr.p3) || corr.p1 < minP_ || corr.p1 > maxP_ ||
213  corr.p2 < minP_ || corr.p2 > maxP_ || corr.p3 < minP_ || corr.p3 > maxP_) {
214  fprintf(ferr_, "%d %d %f %f %f\n", t1, (int)detid, corr.p1, corr.p2, corr.p3);
215  corr.p1 = corr.p2 = corr.p3 = 1;
216  }
217 
218  if (verb_ > 2) {
219  if (detid.subdetId() == EcalBarrel) {
220  cout << EBDetId(detid);
221  } else if (detid.subdetId() == EcalEndcap) {
222  cout << EEDetId(detid);
223  } else {
224  cout << (int)detid;
225  }
226  cout << ": "
227  << "p1 = " << corr.p1 << "\t"
228  << "p2 = " << corr.p2 << "\t"
229  << "p3 = " << corr.p3 << "\n";
230  }
231 
232  corrSet->setValue((int)detid, corr);
233  }
234 
235  try {
236  //Write correction set in DB (one IOV):
237  if (db_->isNewTagRequest("EcalLaserAPDPNRatiosRcd")) {
238  if (verb_)
239  cout << "First IOV, extending starting time." << endl;
240  iovStart = db_->beginOfTime();
241  }
242  timeval t;
243  gettimeofday(&t, nullptr);
244  if (verb_ > 1)
245  cout << "[" << timeToString(t.tv_sec) << "] "
246  << "Write IOV " << iIov << " starting from " << timeToString(iovStart >> 32) << "... ";
247  db_->writeOne(corrSet, iovStart, "EcalLaserAPDPNRatiosRcd");
248  } catch (const cms::Exception& e) {
249  std::cout << "Failed.\nException cathed while writting to cond DB" << e.what() << "\n";
250  }
251  std::cout << "Suceeded.\n";
252 }

References cond::service::PoolDBOutputService::beginOfTime(), alignCSCRings::corr, gather_cfg::cout, db_, MillePedeFileConverter_cfg::e, EcalBarrel, EcalEndcap, Exception, ferr_, fromTime_, mps_fire::i, createfilelist::int, cond::service::PoolDBOutputService::isNewTagRequest(), maxP_, minP_, nLmes, alignCSCRings::r, EcalLaserAPDPNRatios::setTime(), EcalLaserAPDPNRatios::setValue(), DetId::subdetId(), submitPVValidationJobs::t, RandomServiceHelper::t1, RandomServiceHelper::t2, RandomServiceHelper::t3, timeToString(), toNth(), verb_, and cond::service::PoolDBOutputService::writeOne().

Referenced by fillDb().

◆ timeToString()

std::string EcalLaserCondTools::timeToString ( time_t  t)
staticprivate

Definition at line 413 of file EcalLaserCondTools.cc.

413  {
414  char buf[256];
415  struct tm lt;
416  localtime_r(&t, &lt);
417  strftime(buf, sizeof(buf), "%F %R:%S", &lt);
418  buf[sizeof(buf) - 1] = 0;
419  return string(buf);
420 }

References visDQMUpload::buf, AlCaHLTBitMon_QueryRunRegistry::string, and submitPVValidationJobs::t.

Referenced by dbToAscii(), fillDb(), and processIov().

◆ toNth()

string EcalLaserCondTools::toNth ( int  n)
staticprivate

Definition at line 390 of file EcalLaserCondTools.cc.

390  {
391  stringstream s;
392  s << n;
393  if (n % 100 < 10 || n % 100 > 20) {
394  switch (n % 10) {
395  case 1:
396  s << "st";
397  break;
398  case 2:
399  s << "nd";
400  break;
401  case 3:
402  s << "rd";
403  break;
404  default:
405  s << "th";
406  }
407  } else {
408  s << "th";
409  }
410  return s.str();
411 }

References dqmiodumpmetadata::n, and alignCSCRings::s.

Referenced by processIov().

Member Data Documentation

◆ db_

edm::Service<cond::service::PoolDBOutputService> EcalLaserCondTools::db_
private

Definition at line 91 of file EcalLaserCondTools.h.

Referenced by analyze(), and processIov().

◆ eventList_

FILE* EcalLaserCondTools::eventList_
private

Definition at line 86 of file EcalLaserCondTools.h.

Referenced by EcalLaserCondTools(), and fillDb().

◆ eventListFileName_

std::string EcalLaserCondTools::eventListFileName_
private

Definition at line 87 of file EcalLaserCondTools.h.

Referenced by EcalLaserCondTools(), and fillDb().

◆ ferr_

FILE* EcalLaserCondTools::ferr_
private

Definition at line 97 of file EcalLaserCondTools.h.

Referenced by EcalLaserCondTools(), processIov(), and ~EcalLaserCondTools().

◆ fnames_

std::vector<std::string> EcalLaserCondTools::fnames_
private

◆ fout_

FILE* EcalLaserCondTools::fout_
private

Definition at line 85 of file EcalLaserCondTools.h.

Referenced by dbToAscii(), and ~EcalLaserCondTools().

◆ fromTime_

int EcalLaserCondTools::fromTime_
private

Definition at line 94 of file EcalLaserCondTools.h.

Referenced by processIov().

◆ maxP_

double EcalLaserCondTools::maxP_
private

Definition at line 96 of file EcalLaserCondTools.h.

Referenced by processIov().

◆ minP_

double EcalLaserCondTools::minP_
private

Definition at line 96 of file EcalLaserCondTools.h.

Referenced by processIov().

◆ mode_

std::string EcalLaserCondTools::mode_
private

Definition at line 89 of file EcalLaserCondTools.h.

Referenced by analyze().

◆ nIovs_

int EcalLaserCondTools::nIovs_
private

Definition at line 93 of file EcalLaserCondTools.h.

Referenced by fillDb().

◆ nLmes

constexpr int EcalLaserCondTools::nLmes = 92
staticconstexprprivate

Number of extended laser monitoring regions

Definition at line 28 of file EcalLaserCondTools.h.

Referenced by dbToAscii(), fillDb(), processIov(), and EcalLaserCondTools::FileReader::readTime().

◆ skipIov_

int EcalLaserCondTools::skipIov_
private

Definition at line 92 of file EcalLaserCondTools.h.

Referenced by fillDb().

◆ toTime_

int EcalLaserCondTools::toTime_
private

Definition at line 95 of file EcalLaserCondTools.h.

◆ verb_

int EcalLaserCondTools::verb_
private
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
RandomServiceHelper.t2
t2
Definition: RandomServiceHelper.py:257
mps_fire.i
i
Definition: mps_fire.py:428
EcalLaserAPDPNRatiosRcd
Definition: EcalLaserAPDPNRatiosRcd.h:24
dqmiodumpmetadata.n
n
Definition: dqmiodumpmetadata.py:28
cond::service::PoolDBOutputService::beginOfTime
cond::Time_t beginOfTime() const
Definition: PoolDBOutputService.cc:187
EcalLaserCondTools::verb_
int verb_
Definition: EcalLaserCondTools.h:88
EBDetId
Definition: EBDetId.h:17
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
gather_cfg.cout
cout
Definition: gather_cfg.py:144
EcalLaserCondTools::dbToAscii
void dbToAscii(const edm::EventSetup &es)
Definition: EcalLaserCondTools.cc:422
EEDetId::IX_MIN
static const int IX_MIN
Definition: EEDetId.h:290
EEDetId::IY_MIN
static const int IY_MIN
Definition: EEDetId.h:294
EcalCondObjectContainer< EcalLaserAPDPNpair >
edm::Service::isAvailable
bool isAvailable() const
Definition: Service.h:40
EcalBarrel
Definition: EcalSubdetector.h:10
LEDCalibrationChannels.iphi
iphi
Definition: LEDCalibrationChannels.py:64
EcalLaserCondTools::timeToString
static std::string timeToString(time_t t)
Definition: EcalLaserCondTools.cc:413
EcalLaserCondTools::db_
edm::Service< cond::service::PoolDBOutputService > db_
Definition: EcalLaserCondTools.h:91
DetId
Definition: DetId.h:17
EcalLaserCondTools::eventListFileName_
std::string eventListFileName_
Definition: EcalLaserCondTools.h:87
alignCSCRings.s
s
Definition: alignCSCRings.py:92
EcalLaserCondTools::mode_
std::string mode_
Definition: EcalLaserCondTools.h:89
RandomServiceHelper.t1
t1
Definition: RandomServiceHelper.py:256
EcalLaserCondTools::toTime_
int toTime_
Definition: EcalLaserCondTools.h:95
edm::EventSetup::get
T get() const
Definition: EventSetup.h:80
EcalLaserCondTools::processIov
void processIov(CorrReader &r, int t1, int t2[nLmes], int t3)
Definition: EcalLaserCondTools.cc:150
fileCollector.done
done
Definition: fileCollector.py:123
alignCSCRings.corr
dictionary corr
Definition: alignCSCRings.py:124
edm::ESHandle
Definition: DTSurvey.h:22
EBDetId::MAX_IPHI
static const int MAX_IPHI
Definition: EBDetId.h:137
EEDetId::IY_MAX
static const int IY_MAX
Definition: EEDetId.h:302
RandomServiceHelper.t3
t3
Definition: RandomServiceHelper.py:258
EcalLaserCondTools::maxP_
double maxP_
Definition: EcalLaserCondTools.h:96
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
EEDetId
Definition: EEDetId.h:14
EcalLaserCondTools::fromTime_
int fromTime_
Definition: EcalLaserCondTools.h:94
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
EcalEndcap
Definition: EcalSubdetector.h:10
EcalLaserCondTools::toNth
static std::string toNth(int n)
Definition: EcalLaserCondTools.cc:390
EcalLaserCondTools::nIovs_
int nIovs_
Definition: EcalLaserCondTools.h:93
LEDCalibrationChannels.ieta
ieta
Definition: LEDCalibrationChannels.py:63
EcalLaserAPDPNRatios::EcalLaserAPDPNpair
Definition: EcalLaserAPDPNRatios.h:16
cond::Time_t
unsigned long long Time_t
Definition: Time.h:14
EEDetId::IX_MAX
static const int IX_MAX
Definition: EEDetId.h:298
createfilelist.int
int
Definition: createfilelist.py:10
ntuplemaker.iline
iline
Definition: ntuplemaker.py:186
EcalLaserCondTools::nLmes
static constexpr int nLmes
Definition: EcalLaserCondTools.h:28
EcalLaserAPDPNRatios::setValue
void setValue(uint32_t rawId, const EcalLaserAPDPNpair &value)
Definition: EcalLaserAPDPNRatios.h:39
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
EcalLaserAPDPNRatios::EcalLaserTimeStampMap
std::vector< EcalLaserTimeStamp > EcalLaserTimeStampMap
Definition: EcalLaserAPDPNRatios.h:34
get
#define get
res
Definition: Electron.h:6
EcalLaserCondTools::minP_
double minP_
Definition: EcalLaserCondTools.h:96
visDQMUpload.buf
buf
Definition: visDQMUpload.py:154
alignCSCRings.r
r
Definition: alignCSCRings.py:93
EBDetId::validDetId
static bool validDetId(int i, int j)
check if a valid index combination
Definition: EBDetId.h:118
EcalLaserCondTools::ferr_
FILE * ferr_
Definition: EcalLaserCondTools.h:97
EcalLaserCondTools::skipIov_
int skipIov_
Definition: EcalLaserCondTools.h:92
Exception
Definition: hltDiff.cc:246
cond::service::PoolDBOutputService::writeOne
Hash writeOne(const T *payload, Time_t time, const std::string &recordName)
Definition: PoolDBOutputService.h:57
cond::service::PoolDBOutputService::isNewTagRequest
bool isNewTagRequest(const std::string &recordName)
Definition: PoolDBOutputService.cc:100
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
EEDetId::validDetId
static bool validDetId(int crystal_ix, int crystal_iy, int iz)
Definition: EEDetId.h:248
EcalLaserCondTools::fnames_
std::vector< std::string > fnames_
Definition: EcalLaserCondTools.h:90
cond::uint64_t
unsigned long long uint64_t
Definition: Time.h:13
cms::Exception
Definition: Exception.h:70
EcalLaserAPDPNRatios
Definition: EcalLaserAPDPNRatios.h:14
EcalLaserCondTools::eventList_
FILE * eventList_
Definition: EcalLaserCondTools.h:86
EcalLaserCondTools::fillDb
void fillDb(CorrReader &r)
Definition: EcalLaserCondTools.cc:75
EcalLaserCondTools::fout_
FILE * fout_
Definition: EcalLaserCondTools.h:85
submitPVValidationJobs.t
string t
Definition: submitPVValidationJobs.py:644
EcalLaserAPDPNRatios::setTime
void setTime(int hashedIndex, const EcalLaserTimeStamp &value)
Definition: EcalLaserAPDPNRatios.h:42
EcalLaserAPDPNRatios::EcalLaserTimeStamp
Definition: EcalLaserAPDPNRatios.h:24
EBDetId::MAX_IETA
static const int MAX_IETA
Definition: EBDetId.h:136
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
EBDetId::MIN_IPHI
static const int MIN_IPHI
Definition: EBDetId.h:135
edm::Timestamp
Definition: Timestamp.h:30