CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
EcalCondDBInterface Class Reference

#include <EcalCondDBInterface.h>

Inheritance diagram for EcalCondDBInterface:
EcalDBConnection EcalTPGDBApp

Public Member Functions

void dummy ()
 
 EcalCondDBInterface (std::string host, std::string sid, std::string user, std::string pass, int port=1521)
 
 EcalCondDBInterface (std::string sid, std::string user, std::string pass)
 
 EcalCondDBInterface ()=delete
 
 EcalCondDBInterface (const EcalCondDBInterface &copy)=delete
 
CaliIOV fetchCaliIOV (CaliTag *tag, const Tm &evenTm) noexcept(false)
 
template<class DATT , class ICONF >
void fetchConfigDataSet (std::vector< DATT > *fillMap, ICONF *iconf) noexcept(false)
 
template<class ICONF >
void fetchConfigSet (ICONF *iconf) noexcept(false)
 
template<class DATT , class IOVT >
void fetchDataSet (std::map< EcalLogicID, DATT > *fillMap, IOVT *iov) noexcept(false)
 
template<class DATT , class IOVT >
void fetchDataSetWithMap (std::map< EcalLogicID, DATT > *fillMap, IOVT *iov, std::string mapping_name) noexcept(false)
 
template<class DATT >
void fetchDCSDataSet (std::list< std::pair< Tm, std::map< EcalLogicID, DATT > > > *fillMap, const Tm &t) noexcept(false)
 
DCSPTMTempList fetchDCSPTMTempList (const EcalLogicID &ecid) noexcept(false)
 
DCSPTMTempList fetchDCSPTMTempList (const EcalLogicID &ecid, const Tm &start, const Tm &end) noexcept(false)
 
DCUIOV fetchDCUIOV (DCUTag *tag, const Tm &evenTm) noexcept(false)
 
std::list< ODDelaysDatfetchFEDelaysForRun (RunIOV *iov) noexcept(false)
 
RunList fetchGlobalRunListByLocation (const RunTag &tag, int min_run, int max_run, const LocationDef &locDef) noexcept(false)
 
template<class ICONF >
void fetchLastConfigSet (ICONF *iconf) noexcept(false)
 
RunIOV fetchLMFLastRun () const
 
LMFRunIOV fetchLMFRunIOV (RunTag *runtag, LMFRunTag *lmftag, run_t run, subrun_t lmfrun) noexcept(false)
 
bool fetchLMFRunIOV (const LMFSeqDat &, LMFRunIOV &, int lmr, int type, int color) const
 
MonRunIOV fetchMonRunIOV (RunTag *runtag, MonRunTag *montag, run_t run, subrun_t monrun) noexcept(false)
 
MonRunList fetchMonRunList (const RunTag &tag, const MonRunTag &monruntag) noexcept(false)
 
MonRunList fetchMonRunList (const RunTag &tag, const MonRunTag &monruntag, int min_run, int max_run) noexcept(false)
 
MonRunList fetchMonRunListLastNRuns (const RunTag &tag, const MonRunTag &monruntag, int max_run, int n_runs) noexcept(false)
 
RunList fetchNonEmptyGlobalRunList (const RunTag &tag, int min_run, int max_run) noexcept(false)
 
RunList fetchNonEmptyRunList (const RunTag &tag, int min_run, int max_run) noexcept(false)
 
RunIOV fetchRunIOV (RunTag *tag, run_t run) noexcept(false)
 
RunIOV fetchRunIOV (std::string location, run_t run) noexcept(false)
 
RunIOV fetchRunIOV (std::string location, const Tm &t) noexcept(false)
 
RunList fetchRunList (const RunTag &tag) noexcept(false)
 
RunList fetchRunList (const RunTag &tag, int min_run, int max_run) noexcept(false)
 
RunList fetchRunListByLocation (const RunTag &tag, int min_run, int max_run, const LocationDef &locDef) noexcept(false)
 
RunList fetchRunListLastNRuns (const RunTag &tag, int max_run, int n_runs) noexcept(false)
 
template<class DATT , class IOVT >
void fetchValidDataSet (std::map< EcalLogicID, DATT > *fillMap, IOVT *fillIOV, RunTag *tag, run_t run=(unsigned int) -1) noexcept(false)
 
template<class DATT , class IOVT >
void fetchValidDataSet (std::map< EcalLogicID, DATT > *fillMap, IOVT *fillIOV, std::string location, run_t run=(unsigned int) -1) noexcept(false)
 
DateHandlergetDateHandler ()
 
std::map< int, int > getDetId2LogicIdMap ()
 
int getDetIdFromLogicId (int logic_id)
 
EcalLogicID getEcalLogicID (std::string name, int id1=EcalLogicID::NULLID, int id2=EcalLogicID::NULLID, int id3=EcalLogicID::NULLID, std::string mapsTo="") noexcept(false)
 
EcalLogicID getEcalLogicID (int logicID) noexcept(false)
 
std::map< int, int > getEcalLogicID2LmrMap ()
 
std::vector< EcalLogicIDgetEcalLogicIDForLMPN (int lmr_logic_id)
 
std::vector< EcalLogicIDgetEcalLogicIDForLMPN (const EcalLogicID &lmr_logic_id)
 
std::vector< EcalLogicIDgetEcalLogicIDForLMR (int lmr_logic_id)
 
std::vector< EcalLogicIDgetEcalLogicIDForLMR (const EcalLogicID &lmr_logic_id)
 
std::vector< EcalLogicIDgetEcalLogicIDMappedTo (int logic_id, std::string maps_to)
 
std::vector< EcalLogicIDgetEcalLogicIDSet (std::string name, int fromId1=EcalLogicID::NULLID, int toId1=EcalLogicID::NULLID, int fromId2=EcalLogicID::NULLID, int toId2=EcalLogicID::NULLID, int fromId3=EcalLogicID::NULLID, int toId3=EcalLogicID::NULLID, std::string mapsTo="") noexcept(false)
 
std::vector< EcalLogicIDgetEcalLogicIDSetOrdered (std::string name, int fromId1, int toId1, int fromId2=EcalLogicID::NULLID, int toId2=EcalLogicID::NULLID, int fromId3=EcalLogicID::NULLID, int toId3=EcalLogicID::NULLID, std::string mapsTo="", int orderedBy=EcalLogicID::NULLID) noexcept(false)
 
std::map< int, int > getLogicId2DetIdMap ()
 
int getLogicIdFromDetId (int det_id)
 
template<class DATT , class ICONF >
void insertConfigDataArraySet (const std::vector< DATT > &data, ICONF *iconf) noexcept(false)
 
template<class DATT , class ICONF >
void insertConfigDataSet (const std::vector< DATT > data, ICONF *iconf) noexcept(false)
 
template<class ICONF >
void insertConfigSet (ICONF *iconf) noexcept(false)
 
template<class DATT , class IOVT >
void insertDataArraySet (const std::map< EcalLogicID, DATT > *data, IOVT *iov) noexcept(false)
 
template<class DATT , class IOVT >
void insertDataSet (const std::map< EcalLogicID, DATT > *data, IOVT *iov) noexcept(false)
 
template<class DATT , class IOVT >
void insertDataSetVector (const std::vector< EcalLogicID > &ecid, const std::vector< IOVT > &run_iov, const std::vector< DATT > &data) noexcept(false)
 
void insertDCUIOV (DCUIOV *iov) noexcept(false)
 
void insertLmfDat (LMFDat *dat) noexcept(false)
 
void insertLmfDat (std::list< LMFDat *> dat) noexcept(false)
 
void insertLmfIOV (LMFIOV *iov) noexcept(false)
 
void insertLmfLmrSubIOV (LMFLmrSubIOV *iov) noexcept(false)
 
void insertLmfRunIOV (LMFRunIOV *iov) noexcept(false)
 
void insertLmfSeq (LMFSeqDat *iov) noexcept(false)
 
void insertMonRunIOV (MonRunIOV *iov) noexcept(false)
 
void insertRunIOV (RunIOV *iov) noexcept(false)
 
void updateRunConfig (ODRunConfigInfo *od) noexcept(false)
 
void updateRunIOV (RunIOV *iov) noexcept(false)
 
void updateRunIOVEndTime (RunIOV *iov) noexcept(false)
 
void updateRunIOVStartTime (RunIOV *iov) noexcept(false)
 
 ~EcalCondDBInterface () noexcept(false) override
 
- Public Member Functions inherited from EcalDBConnection
void commit ()
 
oracle::occi::Statement * createStatement ()
 
 EcalDBConnection (std::string host, std::string sid, std::string user, std::string pass, int port=1521) noexcept(false)
 
 EcalDBConnection (std::string sid, std::string user, std::string pass) noexcept(false)
 
oracle::occi::Clob getClobLocator ()
 
oracle::occi::Connection * getConn () const
 
oracle::occi::Environment * getEnv () const
 
void rollback ()
 
void terminateStatement (oracle::occi::Statement *stmt)
 
virtual ~EcalDBConnection () noexcept(false)
 

Private Member Functions

void fillLogicId2DetIdMaps ()
 

Private Attributes

std::map< int, int > _detId2LogicId
 
std::map< int, int > _logicId2DetId
 
DateHandlerdh
 

Additional Inherited Members

- Protected Attributes inherited from EcalDBConnection
oracle::occi::Connection * conn
 
oracle::occi::Environment * env
 
std::string host
 
std::string pass
 
int port
 
std::string sid
 
oracle::occi::Statement * stmt
 
std::string user
 

Detailed Description

Definition at line 37 of file EcalCondDBInterface.h.

Constructor & Destructor Documentation

◆ EcalCondDBInterface() [1/4]

EcalCondDBInterface::EcalCondDBInterface ( std::string  host,
std::string  sid,
std::string  user,
std::string  pass,
int  port = 1521 
)
inline

Constructor, makes connection to DB without TNS_ADMIN === Parameters === host: DB host machine sid: DB SID (name) user: User to connect pass: Password for user port: port number to connect, default 1521

Definition at line 52 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, dh, and EcalDBConnection::env.

54  // call the parent constructor
55 
56  // create a DateHandler
57  dh = new DateHandler(env, conn);
58  }
oracle::occi::Environment * env
oracle::occi::Connection * conn
EcalDBConnection(std::string host, std::string sid, std::string user, std::string pass, int port=1521) noexcept(false)

◆ EcalCondDBInterface() [2/4]

EcalCondDBInterface::EcalCondDBInterface ( std::string  sid,
std::string  user,
std::string  pass 
)
inline

Constructor, makes connection to DB with TNS_ADMIN === Parameters === sid: DB SID (name) user: User to connect pass: Password for user

Definition at line 67 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, dh, and EcalDBConnection::env.

68  // call the parent constructor
69 
70  // create a DateHandler
71  dh = new DateHandler(env, conn);
72  }
oracle::occi::Environment * env
oracle::occi::Connection * conn
EcalDBConnection(std::string host, std::string sid, std::string user, std::string pass, int port=1521) noexcept(false)

◆ ~EcalCondDBInterface()

EcalCondDBInterface::~EcalCondDBInterface ( )
inlineoverridenoexcept

Destructor

Definition at line 77 of file EcalCondDBInterface.h.

References dh.

77  {
78  // call the parent destructor
79 
80  // destroy the DateHandler
81  delete (dh);
82  }

◆ EcalCondDBInterface() [3/4]

EcalCondDBInterface::EcalCondDBInterface ( )
delete

◆ EcalCondDBInterface() [4/4]

EcalCondDBInterface::EcalCondDBInterface ( const EcalCondDBInterface copy)
delete

Member Function Documentation

◆ dummy()

void EcalCondDBInterface::dummy ( )

Definition at line 858 of file EcalCondDBInterface.cc.

858 {}

◆ fetchCaliIOV()

CaliIOV EcalCondDBInterface::fetchCaliIOV ( CaliTag tag,
const Tm evenTm 
)
noexcept

Return a Calibration IOV object

Definition at line 738 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, CaliIOV::setByTm(), IDBObject::setConnection(), and makeGlobalPositionRcd_cfg::tag.

738  {
739  CaliIOV caliiov;
740  caliiov.setConnection(env, conn);
741  caliiov.setByTm(tag, eventTm);
742  return caliiov;
743 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
void setByTm(CaliTag *tag, const Tm &time) noexcept(false)
Definition: CaliIOV.cc:174
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ fetchConfigDataSet()

template<class DATT , class ICONF >
void EcalCondDBInterface::fetchConfigDataSet ( std::vector< DATT > *  fillMap,
ICONF *  iconf 
)
inlinenoexcept

Definition at line 482 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, and EcalDBConnection::env.

482  {
483  DATT datiface;
484  datiface.setConnection(env, conn);
485  datiface.createReadStatement();
486  datiface.setPrefetchRowCount(1024);
487  datiface.fetchData(fillMap, iconf);
488  datiface.terminateReadStatement();
489  }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchConfigSet()

template<class ICONF >
void EcalCondDBInterface::fetchConfigSet ( ICONF *  iconf)
inlinenoexcept

Definition at line 387 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, and EcalDBConnection::env.

Referenced by EcalTPGParamBuilder::analyze(), and EcalTPGDBApp::readFromConfDB_TPGPedestals().

387  {
388  iconf->clear();
389  iconf->setConnection(env, conn);
390  iconf->createReadStatement();
391  iconf->fetchData(iconf);
392  iconf->terminateReadStatement();
393  }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchDataSet()

template<class DATT , class IOVT >
void EcalCondDBInterface::fetchDataSet ( std::map< EcalLogicID, DATT > *  fillMap,
IOVT *  iov 
)
inlinenoexcept

Definition at line 495 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, and EcalDBConnection::env.

Referenced by EcalTPGParamBuilder::analyze(), ecaldqm::fetchAndFill(), EcalTPGDBApp::readFromCondDB_Pedestals(), and EcalTPGDBApp::readFromConfDB_TPGPedestals().

495  {
496  fillMap->clear();
497 
498  DATT datiface;
499  datiface.setConnection(env, conn);
500  datiface.createReadStatement();
501  datiface.setPrefetchRowCount(1024);
502  datiface.fetchData(fillMap, iov);
503  datiface.terminateReadStatement();
504  }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchDataSetWithMap()

template<class DATT , class IOVT >
void EcalCondDBInterface::fetchDataSetWithMap ( std::map< EcalLogicID, DATT > *  fillMap,
IOVT *  iov,
std::string  mapping_name 
)
inlinenoexcept

Definition at line 526 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, and EcalDBConnection::env.

526  {
527  fillMap->clear();
528 
529  DATT datiface;
530  datiface.setConnection(env, conn);
531  datiface.createReadStatement();
532  datiface.setPrefetchRowCount(1024);
533  datiface.fetchData(fillMap, iov, mapping_name);
534  datiface.terminateReadStatement();
535  }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchDCSDataSet()

template<class DATT >
void EcalCondDBInterface::fetchDCSDataSet ( std::list< std::pair< Tm, std::map< EcalLogicID, DATT > > > *  fillMap,
const Tm t 
)
inlinenoexcept

Definition at line 510 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, EcalDBConnection::env, and submitPVValidationJobs::t.

510  {
511  fillMap->clear();
512 
513  DATT datiface;
514  datiface.setConnection(env, conn);
515  datiface.createReadStatement();
516  datiface.setPrefetchRowCount(1024);
517  datiface.fetchHistoricalData(fillMap, t);
518  datiface.terminateReadStatement();
519  }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchDCSPTMTempList() [1/2]

DCSPTMTempList EcalCondDBInterface::fetchDCSPTMTempList ( const EcalLogicID ecid)
noexcept

Return a PTM Temp List

Definition at line 745 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, and alignCSCRings::r.

745  {
747  r.setConnection(env, conn);
748  r.fetchValuesForECID(ecid);
749  return r;
750 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchDCSPTMTempList() [2/2]

DCSPTMTempList EcalCondDBInterface::fetchDCSPTMTempList ( const EcalLogicID ecid,
const Tm start,
const Tm end 
)
noexcept

Definition at line 752 of file EcalCondDBInterface.cc.

References getInfo::conn, mps_fire::end, web.browse_db::env, and alignCSCRings::r.

754  {
756  r.setConnection(env, conn);
757  r.fetchValuesForECIDAndTime(ecid, start, end);
758  return r;
759 }
Definition: start.py:1
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchDCUIOV()

DCUIOV EcalCondDBInterface::fetchDCUIOV ( DCUTag tag,
const Tm evenTm 
)
noexcept

Return a DCU IOV object

Definition at line 685 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, DCUIOV::setByTm(), IDBObject::setConnection(), and makeGlobalPositionRcd_cfg::tag.

685  {
686  DCUIOV dcuiov;
687  dcuiov.setConnection(env, conn);
688  dcuiov.setByTm(tag, eventTm);
689  return dcuiov;
690 }
oracle::occi::Environment * env
Definition: DCUIOV.h:13
oracle::occi::Connection * conn
void setByTm(DCUTag *tag, const Tm &time) noexcept(false)
Definition: DCUIOV.cc:173
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ fetchFEDelaysForRun()

std::list< ODDelaysDat > EcalCondDBInterface::fetchFEDelaysForRun ( RunIOV iov)
noexcept

Return run Fe Config Dat objects for a given run

Definition at line 102 of file EcalCondDBInterface.cc.

References getInfo::conn, ztail::d, MillePedeFileConverter_cfg::e, web.browse_db::env, ODDelaysDat::fetchData(), ODFEDAQConfig::fetchData(), mps_fire::i, runTheMatrix::ret, IDBObject::setConnection(), and groupFilesInBlocks::temp.

102  {
103  std::list<ODDelaysDat> ret;
105  std::map<EcalLogicID, RunFEConfigDat> fillMap;
106  try {
107  d.setConnection(env, conn);
108  d.fetchData(&fillMap, iov);
109  } catch (std::runtime_error& e) {
110  throw e;
111  }
112  std::map<EcalLogicID, RunFEConfigDat>::const_iterator i = fillMap.begin();
113  std::map<EcalLogicID, RunFEConfigDat>::const_iterator e = fillMap.end();
114  while (i != e) {
115  ODFEDAQConfig feDaqConfig;
117  temp.setId(i->second.getConfigId());
118  feDaqConfig.setConnection(env, conn);
119  feDaqConfig.fetchData(&temp);
120  std::vector<ODDelaysDat> delays;
121  ODDelaysDat temp2;
122  temp2.setConnection(env, conn);
123  temp2.fetchData(&delays, temp.getDelayId());
124  std::vector<ODDelaysDat>::const_iterator di = delays.begin();
125  std::vector<ODDelaysDat>::const_iterator de = delays.end();
126  while (di != de) {
127  ret.push_back(*di++);
128  }
129  i++;
130  }
131  return ret;
132 }
ret
prodAgent to be discontinued
oracle::occi::Environment * env
void fetchData(std::vector< ODDelaysDat > *fillMap, int id) noexcept(false)
Definition: ODDelaysDat.cc:59
oracle::occi::Connection * conn
d
Definition: ztail.py:151
void fetchData(ODFEDAQConfig *result) noexcept(false)
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ fetchGlobalRunListByLocation()

RunList EcalCondDBInterface::fetchGlobalRunListByLocation ( const RunTag tag,
int  min_run,
int  max_run,
const LocationDef locDef 
)
noexcept

Definition at line 804 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

807  {
808  RunList r;
809  r.setConnection(env, conn);
810  r.setRunTag(tag);
811  r.fetchGlobalRunsByLocation(min_run, max_run, locDef);
812  return r;
813 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchLastConfigSet()

template<class ICONF >
void EcalCondDBInterface::fetchLastConfigSet ( ICONF *  iconf)
inlinenoexcept

Definition at line 399 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, and EcalDBConnection::env.

399  {
400  iconf->clear();
401  iconf->setConnection(env, conn);
402  iconf->createReadStatement();
403  iconf->fetchLastData(iconf);
404  iconf->terminateReadStatement();
405  }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchLMFLastRun()

RunIOV EcalCondDBInterface::fetchLMFLastRun ( ) const

Definition at line 692 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, and cmsswSequenceInfo::seq.

692  {
693  LMFSeqDat seq(env, conn);
694  return seq.fetchLastRun();
695 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchLMFRunIOV() [1/2]

LMFRunIOV EcalCondDBInterface::fetchLMFRunIOV ( RunTag runtag,
LMFRunTag lmftag,
run_t  run,
subrun_t  lmfrun 
)
noexcept

Return a laser monitoring farm run object

Definition at line 697 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, writedatasetfile::run, test_db_connect::runtag, and IDBObject::setConnection().

700  {
701  RunIOV runiov = fetchRunIOV(runtag, run);
702  LMFRunIOV lmfiov;
703  lmfiov.setConnection(env, conn);
704  // lmfiov.setByRun(lmftag, &runiov, subrun);
705  return lmfiov;
706 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
RunIOV fetchRunIOV(RunTag *tag, run_t run) noexcept(false)
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23
Definition: RunIOV.h:13

◆ fetchLMFRunIOV() [2/2]

bool EcalCondDBInterface::fetchLMFRunIOV ( const LMFSeqDat seq,
LMFRunIOV iov,
int  lmr,
int  type,
int  color 
) const

Definition at line 708 of file EcalCondDBInterface.cc.

References getInfo::conn, gather_cfg::cout, web.browse_db::env, LMFRunIOV::fetchBySequence(), LMFRunIOV::fetchLastBeforeSequence(), ntuplemaker::iovlist, runTheMatrix::ret, alignCSCRings::s, cmsswSequenceInfo::seq, and IDBObject::setConnection().

708  {
709  bool ret = false;
710  iov.setConnection(env, conn);
711  std::list<LMFRunIOV> iovlist = iov.fetchBySequence(seq, lmr, type, color);
712  int s = iovlist.size();
713  if (s > 0) {
714  iov = iovlist.front();
715  ret = true;
716  if (s > 1) {
717  // should not happen
718  std::cout << "################################" << std::endl;
719  std::cout << "################################" << std::endl;
720  std::cout << "WARNING: More than one LMFRUNIOV" << std::endl;
721  std::cout << " Found for seq " << seq.getID() << std::endl;
722  std::cout << " lmr " << lmr << " type " << type << std::endl;
723  std::cout << " and color " << color << std::endl;
724  std::cout << "################################" << std::endl;
725  std::cout << "################################" << std::endl;
726  }
727  } else {
728  // find the most recent data
729  iovlist = iov.fetchLastBeforeSequence(seq, lmr, type, color);
730  s = iovlist.size();
731  if (s == 1) {
732  iov = iovlist.front();
733  }
734  }
735  return ret;
736 }
std::list< LMFRunIOV > fetchBySequence(const LMFSeqDat &s)
Definition: LMFRunIOV.cc:353
ret
prodAgent to be discontinued
oracle::occi::Environment * env
oracle::occi::Connection * conn
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23
std::list< LMFRunIOV > fetchLastBeforeSequence(const LMFSeqDat &s, int lmr, int type, int color)
Definition: LMFRunIOV.cc:391

◆ fetchMonRunIOV()

MonRunIOV EcalCondDBInterface::fetchMonRunIOV ( RunTag runtag,
MonRunTag montag,
run_t  run,
subrun_t  monrun 
)
noexcept

Return a monitoring run object

Definition at line 674 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, writedatasetfile::run, test_db_connect::runtag, MonRunIOV::setByRun(), and IDBObject::setConnection().

Referenced by EcalCondDBWriter::dqmEndJob(), EcalCondDBReader::EcalCondDBReader(), and EcalPedOffset::writeDb().

677  {
678  RunIOV runiov = fetchRunIOV(runtag, run);
679  MonRunIOV moniov;
680  moniov.setConnection(env, conn);
681  moniov.setByRun(montag, &runiov, subrun);
682  return moniov;
683 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
RunIOV fetchRunIOV(RunTag *tag, run_t run) noexcept(false)
void setByRun(MonRunTag *montag, RunIOV *runiov, subrun_t subrun) noexcept(false)
Definition: MonRunIOV.cc:231
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23
Definition: RunIOV.h:13

◆ fetchMonRunList() [1/2]

MonRunList EcalCondDBInterface::fetchMonRunList ( const RunTag tag,
const MonRunTag monruntag 
)
noexcept

Definition at line 825 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

825  {
826  MonRunList r;
827  r.setConnection(env, conn);
828  r.setRunTag(tag);
829  r.setMonRunTag(monrunTag);
830  r.fetchRuns();
831  return r;
832 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchMonRunList() [2/2]

MonRunList EcalCondDBInterface::fetchMonRunList ( const RunTag tag,
const MonRunTag monruntag,
int  min_run,
int  max_run 
)
noexcept

Definition at line 834 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

837  {
838  MonRunList r;
839  r.setConnection(env, conn);
840  r.setRunTag(tag);
841  r.setMonRunTag(monrunTag);
842  r.fetchRuns(min_run, max_run);
843  return r;
844 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchMonRunListLastNRuns()

MonRunList EcalCondDBInterface::fetchMonRunListLastNRuns ( const RunTag tag,
const MonRunTag monruntag,
int  max_run,
int  n_runs 
)
noexcept

Definition at line 846 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

Referenced by EcalTPGDBApp::readFromCondDB_Pedestals().

849  {
850  MonRunList r;
851  r.setConnection(env, conn);
852  r.setRunTag(tag);
853  r.setMonRunTag(monrunTag);
854  r.fetchLastNRuns(max_run, n_runs);
855  return r;
856 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchNonEmptyGlobalRunList()

RunList EcalCondDBInterface::fetchNonEmptyGlobalRunList ( const RunTag tag,
int  min_run,
int  max_run 
)
noexcept

Definition at line 785 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

785  {
786  RunList r;
787  r.setConnection(env, conn);
788  r.setRunTag(tag);
789  r.fetchNonEmptyGlobalRuns(min_run, max_run);
790  return r;
791 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchNonEmptyRunList()

RunList EcalCondDBInterface::fetchNonEmptyRunList ( const RunTag tag,
int  min_run,
int  max_run 
)
noexcept

Definition at line 777 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

777  {
778  RunList r;
779  r.setConnection(env, conn);
780  r.setRunTag(tag);
781  r.fetchNonEmptyRuns(min_run, max_run);
782  return r;
783 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchRunIOV() [1/3]

RunIOV EcalCondDBInterface::fetchRunIOV ( RunTag tag,
run_t  run 
)
noexcept

Return a run IOV object for a given tag

Definition at line 631 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, writedatasetfile::run, RunIOV::setByRun(), IDBObject::setConnection(), and makeGlobalPositionRcd_cfg::tag.

Referenced by EcalCondDBWriter::dqmEndJob(), EcalCondDBReader::EcalCondDBReader(), and EcalPedOffset::writeDb().

631  {
632  RunIOV iov;
633  iov.setConnection(env, conn);
634  iov.setByRun(tag, run);
635  return iov;
636 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
void setByRun(RunTag *tag, run_t run) noexcept(false)
Definition: RunIOV.cc:314
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23
Definition: RunIOV.h:13

◆ fetchRunIOV() [2/3]

RunIOV EcalCondDBInterface::fetchRunIOV ( std::string  location,
run_t  run 
)
noexcept

Return a run IOV object for a given location. It is not guarunteed that a run is unique for a location only, so an exception is thrown if more than one result exists.

Definition at line 638 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, relval_nano::location, writedatasetfile::run, RunIOV::setByRun(), and IDBObject::setConnection().

638  {
639  RunIOV iov;
640  iov.setConnection(env, conn);
641  iov.setByRun(location, run);
642  return iov;
643 }
oracle::occi::Environment * env
location
10.6 INPUT and workflows
Definition: relval_nano.py:81
oracle::occi::Connection * conn
void setByRun(RunTag *tag, run_t run) noexcept(false)
Definition: RunIOV.cc:314
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23
Definition: RunIOV.h:13

◆ fetchRunIOV() [3/3]

RunIOV EcalCondDBInterface::fetchRunIOV ( std::string  location,
const Tm t 
)
noexcept

Definition at line 645 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, relval_nano::location, RunIOV::setByTime(), IDBObject::setConnection(), and submitPVValidationJobs::t.

645  {
646  RunIOV iov;
647  iov.setConnection(env, conn);
648  iov.setByTime(location, t);
649  return iov;
650 }
void setByTime(std::string location, const Tm &t) noexcept(false)
Definition: RunIOV.cc:353
oracle::occi::Environment * env
location
10.6 INPUT and workflows
Definition: relval_nano.py:81
oracle::occi::Connection * conn
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23
Definition: RunIOV.h:13

◆ fetchRunList() [1/2]

RunList EcalCondDBInterface::fetchRunList ( const RunTag tag)
noexcept

Return a Run List

Definition at line 761 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

761  {
762  RunList r;
763  r.setConnection(env, conn);
764  r.setRunTag(tag);
765  r.fetchRuns();
766  return r;
767 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchRunList() [2/2]

RunList EcalCondDBInterface::fetchRunList ( const RunTag tag,
int  min_run,
int  max_run 
)
noexcept

Definition at line 769 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

769  {
770  RunList r;
771  r.setConnection(env, conn);
772  r.setRunTag(tag);
773  r.fetchRuns(min_run, max_run);
774  return r;
775 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchRunListByLocation()

RunList EcalCondDBInterface::fetchRunListByLocation ( const RunTag tag,
int  min_run,
int  max_run,
const LocationDef locDef 
)
noexcept

Definition at line 793 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

796  {
797  RunList r;
798  r.setConnection(env, conn);
799  r.setRunTag(tag);
800  r.fetchRunsByLocation(min_run, max_run, locDef);
801  return r;
802 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchRunListLastNRuns()

RunList EcalCondDBInterface::fetchRunListLastNRuns ( const RunTag tag,
int  max_run,
int  n_runs 
)
noexcept

Definition at line 815 of file EcalCondDBInterface.cc.

References getInfo::conn, web.browse_db::env, alignCSCRings::r, and makeGlobalPositionRcd_cfg::tag.

815  {
816  RunList r;
817  r.setConnection(env, conn);
818  r.setRunTag(tag);
819  r.fetchLastNRuns(max_run, n_runs);
820  return r;
821 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchValidDataSet() [1/2]

template<class DATT , class IOVT >
void EcalCondDBInterface::fetchValidDataSet ( std::map< EcalLogicID, DATT > *  fillMap,
IOVT *  fillIOV,
RunTag tag,
run_t  run = (unsigned int)-1 
)
inlinenoexcept

Definition at line 545 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, EcalDBConnection::env, writedatasetfile::run, and makeGlobalPositionRcd_cfg::tag.

548  {
549  fillMap->clear();
550  DATT datiface;
551  fillIOV->setConnection(env, conn);
552  fillIOV->setByRecentData(datiface.getTable(), tag, run);
553  datiface.setConnection(env, conn);
554  datiface.createReadStatement();
555  datiface.setPrefetchRowCount(1024);
556  datiface.fetchData(fillMap, fillIOV);
557  datiface.terminateReadStatement();
558  }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ fetchValidDataSet() [2/2]

template<class DATT , class IOVT >
void EcalCondDBInterface::fetchValidDataSet ( std::map< EcalLogicID, DATT > *  fillMap,
IOVT *  fillIOV,
std::string  location,
run_t  run = (unsigned int)-1 
)
inlinenoexcept

Definition at line 568 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, EcalDBConnection::env, relval_nano::location, and writedatasetfile::run.

571  {
572  fillMap->clear();
573  DATT datiface;
574  fillIOV->setConnection(env, conn);
575  fillIOV->setByRecentData(datiface.getTable(), location, run);
576  datiface.setConnection(env, conn);
577  datiface.createReadStatement();
578  datiface.setPrefetchRowCount(1024);
579  datiface.fetchData(fillMap, fillIOV);
580  datiface.terminateReadStatement();
581  }
oracle::occi::Environment * env
location
10.6 INPUT and workflows
Definition: relval_nano.py:81
oracle::occi::Connection * conn

◆ fillLogicId2DetIdMaps()

void EcalCondDBInterface::fillLogicId2DetIdMaps ( )
private

Private method: fill a private map used to associate logicIds to DetIds

Definition at line 28 of file EcalCondDBInterface.cc.

References l1tPhase2CaloJetEmulator_cfi::iEta, and EcalLogicID::NULLID.

Referenced by getDetId2LogicIdMap(), getDetIdFromLogicId(), getLogicId2DetIdMap(), and getLogicIdFromDetId().

28  {
29  // retrieve the lists of logic_ids, to build the detids
30  std::vector<EcalLogicID> crystals_EB = getEcalLogicIDSetOrdered(
31  "EB_crystal_angle", -85, 85, 1, 360, EcalLogicID::NULLID, EcalLogicID::NULLID, "EB_crystal_number", 4);
32  std::vector<EcalLogicID> crystals_EE =
33  getEcalLogicIDSetOrdered("EE_crystal_number", -1, 1, 1, 100, 1, 100, "EE_crystal_number", 4);
34  // fill the barrel map
35  std::vector<EcalLogicID>::const_iterator ieb = crystals_EB.begin();
36  std::vector<EcalLogicID>::const_iterator eeb = crystals_EB.end();
37  while (ieb != eeb) {
38  int iEta = ieb->getID1();
39  int iPhi = ieb->getID2();
40  EBDetId ebdetid(iEta, iPhi);
41  _logicId2DetId[ieb->getLogicID()] = ebdetid;
42  _detId2LogicId[ebdetid] = ieb->getLogicID();
43  ieb++;
44  }
45 
46  // fill the endcap map
47  std::vector<EcalLogicID>::const_iterator iee = crystals_EE.begin();
48  std::vector<EcalLogicID>::const_iterator eee = crystals_EE.end();
49 
50  while (iee != eee) {
51  int iSide = iee->getID1();
52  int iX = iee->getID2();
53  int iY = iee->getID3();
54  EEDetId eedetidpos(iX, iY, iSide);
55  _logicId2DetId[iee->getLogicID()] = eedetidpos;
56  _detId2LogicId[eedetidpos] = iee->getLogicID();
57  iee++;
58  }
59 }
std::map< int, int > _detId2LogicId
std::map< int, int > _logicId2DetId
std::vector< EcalLogicID > getEcalLogicIDSetOrdered(std::string name, int fromId1, int toId1, int fromId2=EcalLogicID::NULLID, int toId2=EcalLogicID::NULLID, int fromId3=EcalLogicID::NULLID, int toId3=EcalLogicID::NULLID, std::string mapsTo="", int orderedBy=EcalLogicID::NULLID) noexcept(false)
static const int NULLID
Definition: EcalLogicID.h:35

◆ getDateHandler()

DateHandler* EcalCondDBInterface::getDateHandler ( )
inline

Return a date handler associated with this connection

Definition at line 87 of file EcalCondDBInterface.h.

References dh.

87 { return dh; }

◆ getDetId2LogicIdMap()

std::map<int, int> EcalCondDBInterface::getDetId2LogicIdMap ( )
inline

Definition at line 612 of file EcalCondDBInterface.h.

References _detId2LogicId, _logicId2DetId, and fillLogicId2DetIdMaps().

612  {
613  if (_logicId2DetId.empty()) {
615  }
616  return _detId2LogicId;
617  }
std::map< int, int > _detId2LogicId
std::map< int, int > _logicId2DetId

◆ getDetIdFromLogicId()

int EcalCondDBInterface::getDetIdFromLogicId ( int  logic_id)
inline

Definition at line 583 of file EcalCondDBInterface.h.

References _logicId2DetId, ALCARECOPPSCalTrackBasedSel_cff::detid, and fillLogicId2DetIdMaps().

583  {
584  int detid = -1;
585  if (_logicId2DetId.empty()) {
587  }
588  if (_logicId2DetId.find(logic_id) != _logicId2DetId.end()) {
589  detid = _logicId2DetId[logic_id];
590  }
591  return detid;
592  }
std::map< int, int > _logicId2DetId

◆ getEcalLogicID() [1/2]

EcalLogicID EcalCondDBInterface::getEcalLogicID ( std::string  name,
int  id1 = EcalLogicID::NULLID,
int  id2 = EcalLogicID::NULLID,
int  id3 = EcalLogicID::NULLID,
std::string  mapsTo = "" 
)
noexcept

Look up the "human readable" ids and return an EcalLogicID object which contains the "database readable" logic_id === Parameters === name: name of the channel type you are specifying id1, id2, id3: ids of the channel type mapsTo: name of the channel type you are mapping to

Referenced by EcalTPGParamBuilder::analyze(), and EcalPedOffset::writeDb().

◆ getEcalLogicID() [2/2]

EcalLogicID EcalCondDBInterface::getEcalLogicID ( int  logicID)
noexcept

Look up the database logic_id and return the EcalLogicID object which contains the "human readable" ids === Parameters === logicID: DB logic_id

Definition at line 61 of file EcalCondDBInterface.cc.

References MillePedeFileConverter_cfg::e, globals_cff::id1, globals_cff::id2, mps_check::msg, mergeVDriftHistosByStation::name, EcalLogicID::NULLID, and AlCaHLTBitMon_QueryRunRegistry::string.

61  {
62  string sql =
63  "SELECT name, logic_id, id1, id2, id3, maps_to FROM channelView WHERE logic_id = :logicID AND name=maps_to";
64 
65  int id1, id2, id3;
66  string name, mapsTo;
67 
68  try {
69  stmt->setSQL(sql);
70  stmt->setInt(1, logicID);
71  ResultSet* rset = stmt->executeQuery();
72 
73  if (rset->next()) {
74  name = rset->getString(1);
75  logicID = rset->getInt(2);
76  id1 = rset->getInt(3);
77  if (rset->isNull(3)) {
79  }
80  id2 = rset->getInt(4);
81  if (rset->isNull(4)) {
83  }
84  id3 = rset->getInt(5);
85  if (rset->isNull(5)) {
86  id3 = EcalLogicID::NULLID;
87  }
88  mapsTo = rset->getString(6);
89  } else {
90  stringstream msg;
91  msg << "ERROR: Cannot build EcalLogicID for logic_id " << logicID;
92  throw(std::runtime_error(msg.str()));
93  }
94 
95  } catch (SQLException& e) {
96  throw(std::runtime_error(std::string("ERROR: Failed to retrive ids: ") + e.getMessage()));
97  }
98 
99  return EcalLogicID(name, logicID, id1, id2, id3, mapsTo);
100 }
tuple msg
Definition: mps_check.py:286
static const int NULLID
Definition: EcalLogicID.h:35
oracle::occi::Statement * stmt

◆ getEcalLogicID2LmrMap()

std::map< int, int > EcalCondDBInterface::getEcalLogicID2LmrMap ( )

Definition at line 280 of file EcalCondDBInterface.cc.

References mps_fire::i, EcalLogicID::NULLID, and runTheMatrix::ret.

280  {
281  std::map<int, int> ret;
282  std::vector<EcalLogicID> crystals_EB = getEcalLogicIDSetOrdered("EB_crystal_number",
283  1,
284  36,
285  1,
286  1700,
289  "EB_crystal_number",
291  std::vector<EcalLogicID> crystals_EE =
292  getEcalLogicIDSetOrdered("EE_crystal_number", -1, 1, 1, 100, 1, 100, "EE_crystal_number", EcalLogicID::NULLID);
293  std::vector<EcalLogicID> EB_lmr = getEcalLogicIDSetOrdered(
294  "EB_crystal_number", 1, 36, 1, 1700, EcalLogicID::NULLID, EcalLogicID::NULLID, "ECAL_LMR", EcalLogicID::NULLID);
295  std::vector<EcalLogicID> EE_lmr =
296  getEcalLogicIDSetOrdered("EE_crystal_number", -1, 1, 1, 100, 1, 100, "ECAL_LMR", EcalLogicID::NULLID);
297  unsigned int neb = crystals_EB.size();
298  unsigned int nee = crystals_EE.size();
299  if (neb != EB_lmr.size()) {
300  throw(std::runtime_error("ERROR: EB Vectors size do not agree"));
301  }
302  if (nee != EE_lmr.size()) {
303  throw(std::runtime_error("ERROR: EE Vectors size do not agree"));
304  }
305  for (unsigned int i = 0; i < neb; i++) {
306  ret[crystals_EB[i].getLogicID()] = EB_lmr[i].getLogicID() % 100;
307  }
308  for (unsigned int i = 0; i < nee; i++) {
309  ret[crystals_EE[i].getLogicID()] = EE_lmr[i].getLogicID() % 100;
310  }
311  return ret;
312 }
ret
prodAgent to be discontinued
std::vector< EcalLogicID > getEcalLogicIDSetOrdered(std::string name, int fromId1, int toId1, int fromId2=EcalLogicID::NULLID, int toId2=EcalLogicID::NULLID, int fromId3=EcalLogicID::NULLID, int toId3=EcalLogicID::NULLID, std::string mapsTo="", int orderedBy=EcalLogicID::NULLID) noexcept(false)
static const int NULLID
Definition: EcalLogicID.h:35

◆ getEcalLogicIDForLMPN() [1/2]

std::vector< EcalLogicID > EcalCondDBInterface::getEcalLogicIDForLMPN ( int  lmr_logic_id)

Definition at line 376 of file EcalCondDBInterface.cc.

376  {
377  if ((lmr / 1000000000) == 2) {
378  return getEcalLogicIDMappedTo(lmr, "EE_LM_PN");
379  } else {
380  return getEcalLogicIDMappedTo(lmr, "EB_LM_PN");
381  }
382 }
std::vector< EcalLogicID > getEcalLogicIDMappedTo(int logic_id, std::string maps_to)

◆ getEcalLogicIDForLMPN() [2/2]

std::vector< EcalLogicID > EcalCondDBInterface::getEcalLogicIDForLMPN ( const EcalLogicID lmr_logic_id)

Definition at line 384 of file EcalCondDBInterface.cc.

References EcalLogicID::getLogicID().

384  {
385  return getEcalLogicIDForLMR(lmr.getLogicID());
386 }
std::vector< EcalLogicID > getEcalLogicIDForLMR(int lmr_logic_id)

◆ getEcalLogicIDForLMR() [1/2]

std::vector< EcalLogicID > EcalCondDBInterface::getEcalLogicIDForLMR ( int  lmr_logic_id)

Definition at line 368 of file EcalCondDBInterface.cc.

368  {
369  return getEcalLogicIDMappedTo(lmr, "ECAL_LMR");
370 }
std::vector< EcalLogicID > getEcalLogicIDMappedTo(int logic_id, std::string maps_to)

◆ getEcalLogicIDForLMR() [2/2]

std::vector< EcalLogicID > EcalCondDBInterface::getEcalLogicIDForLMR ( const EcalLogicID lmr_logic_id)

Definition at line 372 of file EcalCondDBInterface.cc.

References EcalLogicID::getLogicID().

372  {
373  return getEcalLogicIDForLMR(lmr.getLogicID());
374 }
std::vector< EcalLogicID > getEcalLogicIDForLMR(int lmr_logic_id)

◆ getEcalLogicIDMappedTo()

std::vector< EcalLogicID > EcalCondDBInterface::getEcalLogicIDMappedTo ( int  logic_id,
std::string  maps_to 
)

Build various reverse maps Map an LMR, or a Ex_LM_PN into the set of components

Definition at line 314 of file EcalCondDBInterface.cc.

References MillePedeFileConverter_cfg::e, IDBObject::ECALDB_NROWS, globals_cff::id1, globals_cff::id2, mergeVDriftHistosByStation::name, EcalLogicID::NULLID, runTheMatrix::ret, and AlCaHLTBitMon_QueryRunRegistry::string.

314  {
315  std::string name = "EB_crystal_angle";
316  std::string sql =
317  "SELECT LOGIC_ID, ID1, ID2, ID3 "
318  "FROM CHANNELVIEW WHERE NAME = 'EB_crystal_angle' AND LOGIC_ID IN "
319  "(SELECT LOGIC_ID FROM CHANNELVIEW WHERE NAME = 'EB_crystal_number' AND "
320  "ID1*10000+ID2 IN (SELECT DISTINCT ID1*10000+ID2 FROM CHANNELVIEW "
321  "WHERE LOGIC_ID = :1 AND NAME = 'EB_crystal_number' AND MAPS_TO = :2) "
322  "AND NAME = MAPS_TO)";
323  if ((lmr_logic_id / 1000000000) == 2) {
324  name = "EE_crystal_number";
325  sql =
326  "SELECT LOGIC_ID, ID1, ID2, ID3 "
327  "FROM CHANNELVIEW WHERE NAME = 'EE_crystal_number' AND LOGIC_ID IN "
328  "(SELECT LOGIC_ID FROM CHANNELVIEW WHERE NAME = 'EE_crystal_number' AND "
329  "ID1*10000000+ID2*10000+ID3 IN (SELECT DISTINCT "
330  "ID1*10000000+ID2*10000+ID3 FROM CHANNELVIEW "
331  "WHERE LOGIC_ID = :1 AND NAME = 'EE_crystal_number' AND MAPS_TO = :2) "
332  "AND NAME = MAPS_TO) AND NAME = MAPS_TO";
333  }
334  std::vector<EcalLogicID> ret;
335  try {
336  stmt->setSQL(sql);
337  stmt->setInt(1, lmr_logic_id);
338  stmt->setString(2, maps_to);
339  stmt->setPrefetchRowCount(IDBObject::ECALDB_NROWS);
340 
341  ResultSet* rset = stmt->executeQuery();
342 
343  while (rset->next()) {
344  int logic_id = rset->getInt(1);
345  int id1 = rset->getInt(2);
346  if (rset->isNull(2)) {
348  }
349  int id2 = rset->getInt(3);
350  if (rset->isNull(3)) {
352  }
353  int id3 = rset->getInt(4);
354  if (rset->isNull(4)) {
355  id3 = EcalLogicID::NULLID;
356  }
357 
358  EcalLogicID ecid = EcalLogicID(name, logic_id, id1, id2, id3, maps_to);
359  ret.push_back(ecid);
360  }
361  stmt->setPrefetchRowCount(0);
362  } catch (SQLException& e) {
363  throw(std::runtime_error(std::string("ERROR: Failure while getting EcalLogicID set: ") + e.getMessage()));
364  }
365  return ret;
366 }
ret
prodAgent to be discontinued
static int const ECALDB_NROWS
Definition: IDBObject.h:18
static const int NULLID
Definition: EcalLogicID.h:35
oracle::occi::Statement * stmt

◆ getEcalLogicIDSet()

std::vector< EcalLogicID > EcalCondDBInterface::getEcalLogicIDSet ( std::string  name,
int  fromId1 = EcalLogicID::NULLID,
int  toId1 = EcalLogicID::NULLID,
int  fromId2 = EcalLogicID::NULLID,
int  toId2 = EcalLogicID::NULLID,
int  fromId3 = EcalLogicID::NULLID,
int  toId3 = EcalLogicID::NULLID,
std::string  mapsTo = "" 
)
noexcept

Get a set of EcalLogicID in one transaction === Parameters === name: name of the channel type you are specifying fromId1, toId1: Range of id1 in the DB to retrieve fromId2, toId2: Range of id2 in the DB to retrieve fromId3, toId3: Range of id3 in the DB to retrieve string mapsTo: channel type name these ids map to

Definition at line 188 of file EcalCondDBInterface.cc.

References MillePedeFileConverter_cfg::e, IDBObject::ECALDB_NROWS, mps_fire::i, globals_cff::id1, globals_cff::id2, dqmiolumiharvest::j, mergeVDriftHistosByStation::name, EcalLogicID::NULLID, mps_fire::result, contentValuesCheck::ss, and AlCaHLTBitMon_QueryRunRegistry::string.

189  {
190  if (mapsTo.empty()) {
191  mapsTo = name;
192  }
193 
194  int idArray[] = {fromId1, toId1, fromId2, toId2, fromId3, toId3};
195  int from, to;
196 
197  stringstream ss;
198  ss << "SELECT name, logic_id, id1, id2, id3, maps_to FROM channelView WHERE name = :name AND ";
199 
200  // loop through the three ids
201  for (int i = 1; i <= 3; i++) {
202  from = idArray[2 * (i - 1)];
203  to = idArray[2 * (i - 1) + 1];
204 
205  // check the id arguments in pairs
206  if ((from == EcalLogicID::NULLID && to != EcalLogicID::NULLID) || // one is null
207  (from != EcalLogicID::NULLID && to == EcalLogicID::NULLID) || // but not the other
208  (from > to)) { // negative interval
209  throw(std::runtime_error("ERROR: Bad arguments for getEcalLogicIDSet"));
210  }
211 
212  // build the sql
213  if (from == EcalLogicID::NULLID && to == EcalLogicID::NULLID) {
214  ss << "id" << i << " IS NULL AND ";
215  } else {
216  ss << "id" << i << " >= :id" << i << "from AND "
217  << "id" << i << " <= :id" << i << "to AND ";
218  }
219  }
220  ss << "maps_to = :maps_to ORDER BY id1, id2, id3";
221 
222  std::vector<EcalLogicID> result;
223 
224  try {
225  stmt->setSQL(ss.str());
226 
227  // bind the parameters
228  int j = 1; // parameter number counter
229  stmt->setString(j, name);
230  j++;
231 
232  for (int i = 0; i < 3; i++) {
233  from = idArray[2 * i];
234  to = idArray[2 * i + 1];
235  if (from != EcalLogicID::NULLID) {
236  stmt->setInt(j, from);
237  j++;
238  stmt->setInt(j, to);
239  j++;
240  }
241  }
242 
243  stmt->setString(j, mapsTo);
244 
245  stmt->setPrefetchRowCount(IDBObject::ECALDB_NROWS);
246 
247  ResultSet* rset = stmt->executeQuery();
248 
249  int id1, id2, id3, logicId;
250 
251  while (rset->next()) {
252  name = rset->getString(1);
253  logicId = rset->getInt(2);
254  id1 = rset->getInt(3);
255  if (rset->isNull(3)) {
257  }
258  id2 = rset->getInt(4);
259  if (rset->isNull(4)) {
261  }
262  id3 = rset->getInt(5);
263  if (rset->isNull(5)) {
264  id3 = EcalLogicID::NULLID;
265  }
266  mapsTo = rset->getString(6);
267 
268  EcalLogicID ecid = EcalLogicID(name, logicId, id1, id2, id3, mapsTo);
269  result.push_back(ecid);
270  }
271  stmt->setPrefetchRowCount(0);
272 
273  } catch (SQLException& e) {
274  throw(std::runtime_error(std::string("ERROR: Failure while getting EcalLogicID set: ") + e.getMessage()));
275  }
276 
277  return result;
278 }
static int const ECALDB_NROWS
Definition: IDBObject.h:18
static const int NULLID
Definition: EcalLogicID.h:35
oracle::occi::Statement * stmt

◆ getEcalLogicIDSetOrdered()

std::vector< EcalLogicID > EcalCondDBInterface::getEcalLogicIDSetOrdered ( std::string  name,
int  fromId1,
int  toId1,
int  fromId2 = EcalLogicID::NULLID,
int  toId2 = EcalLogicID::NULLID,
int  fromId3 = EcalLogicID::NULLID,
int  toId3 = EcalLogicID::NULLID,
std::string  mapsTo = "",
int  orderedBy = EcalLogicID::NULLID 
)
noexcept

Definition at line 388 of file EcalCondDBInterface.cc.

References MillePedeFileConverter_cfg::e, IDBObject::ECALDB_NROWS, mps_fire::i, globals_cff::id1, globals_cff::id2, dqmiolumiharvest::j, mergeVDriftHistosByStation::name, EcalLogicID::NULLID, mps_fire::result, contentValuesCheck::ss, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by EcalTPGParamBuilder::analyze().

392  {
393  if (mapsTo.empty()) {
394  mapsTo = name;
395  }
396 
397  int idArray[] = {fromId1, toId1, fromId2, toId2, fromId3, toId3};
398  int from, to;
399 
400  stringstream ss;
401  ss << "SELECT name, logic_id, id1, id2, id3, maps_to FROM channelView WHERE name = :name AND ";
402 
403  // loop through the three ids
404  for (int i = 1; i <= 3; i++) {
405  from = idArray[2 * (i - 1)];
406  to = idArray[2 * (i - 1) + 1];
407 
408  // check the id arguments in pairs
409  if ((from == EcalLogicID::NULLID && to != EcalLogicID::NULLID) || // one is null
410  (from != EcalLogicID::NULLID && to == EcalLogicID::NULLID) || // but not the other
411  (from > to)) { // negative interval
412  throw(std::runtime_error("ERROR: Bad arguments for getEcalLogicIDSet"));
413  }
414 
415  // build the sql
416  if (from == EcalLogicID::NULLID && to == EcalLogicID::NULLID) {
417  ss << "id" << i << " IS NULL AND ";
418  } else {
419  ss << "id" << i << " >= :id" << i << "from AND "
420  << "id" << i << " <= :id" << i << "to AND ";
421  }
422  }
423  ss << "maps_to = :maps_to ";
424 
425  if (orderedBy == EcalLogicID::NULLID) {
426  ss << " ORDER BY id1, id2, id3";
427  } else if (orderedBy == 1 || orderedBy == 12 || orderedBy == 123) {
428  ss << " ORDER BY id1, id2, id3 ";
429  } else if (orderedBy == 213 || orderedBy == 21) {
430  ss << " ORDER BY id2, id1, id3 ";
431  } else if (orderedBy == 231 || orderedBy == 23) {
432  ss << " ORDER BY id2, id3, id1 ";
433  } else if (orderedBy == 321 || orderedBy == 32) {
434  ss << " ORDER BY id3, id2, id1 ";
435  } else if (orderedBy == 312 || orderedBy == 31) {
436  ss << " ORDER BY id3, id1, id2 ";
437  } else if (orderedBy == 132 || orderedBy == 13) {
438  ss << " ORDER BY id1, id3, id2 ";
439  } else if (orderedBy == 1234) {
440  ss << " ORDER BY id1, id2, id3, logic_id ";
441  } else if (orderedBy == 4) {
442  ss << " ORDER BY logic_id ";
443  } else {
444  ss << " ORDER BY id1, id2, id3";
445  }
446 
447  std::vector<EcalLogicID> result;
448 
449  try {
450  stmt->setSQL(ss.str());
451 
452  // bind the parameters
453  int j = 1; // parameter number counter
454  stmt->setString(j, name);
455  j++;
456 
457  for (int i = 0; i < 3; i++) {
458  from = idArray[2 * i];
459  to = idArray[2 * i + 1];
460  if (from != EcalLogicID::NULLID) {
461  stmt->setInt(j, from);
462  j++;
463  stmt->setInt(j, to);
464  j++;
465  }
466  }
467 
468  stmt->setString(j, mapsTo);
469 
470  stmt->setPrefetchRowCount(IDBObject::ECALDB_NROWS);
471 
472  ResultSet* rset = stmt->executeQuery();
473 
474  int id1, id2, id3, logicId;
475 
476  while (rset->next()) {
477  name = rset->getString(1);
478  logicId = rset->getInt(2);
479  id1 = rset->getInt(3);
480  if (rset->isNull(3)) {
482  }
483  id2 = rset->getInt(4);
484  if (rset->isNull(4)) {
486  }
487  id3 = rset->getInt(5);
488  if (rset->isNull(5)) {
489  id3 = EcalLogicID::NULLID;
490  }
491  mapsTo = rset->getString(6);
492 
493  EcalLogicID ecid = EcalLogicID(name, logicId, id1, id2, id3, mapsTo);
494  result.push_back(ecid);
495  }
496  stmt->setPrefetchRowCount(0);
497 
498  } catch (SQLException& e) {
499  throw(std::runtime_error(std::string("ERROR: Failure while getting EcalLogicID set: ") + e.getMessage()));
500  }
501 
502  return result;
503 }
static int const ECALDB_NROWS
Definition: IDBObject.h:18
static const int NULLID
Definition: EcalLogicID.h:35
oracle::occi::Statement * stmt

◆ getLogicId2DetIdMap()

std::map<int, int> EcalCondDBInterface::getLogicId2DetIdMap ( )
inline

Definition at line 605 of file EcalCondDBInterface.h.

References _logicId2DetId, and fillLogicId2DetIdMaps().

605  {
606  if (_logicId2DetId.empty()) {
608  }
609  return _logicId2DetId;
610  }
std::map< int, int > _logicId2DetId

◆ getLogicIdFromDetId()

int EcalCondDBInterface::getLogicIdFromDetId ( int  det_id)
inline

Definition at line 594 of file EcalCondDBInterface.h.

References _detId2LogicId, _logicId2DetId, and fillLogicId2DetIdMaps().

594  {
595  int logic_id = -1;
596  if (_logicId2DetId.empty()) {
598  }
599  if (_detId2LogicId.find(det_id) != _detId2LogicId.end()) {
600  logic_id = _detId2LogicId[det_id];
601  }
602  return logic_id;
603  }
std::map< int, int > _detId2LogicId
std::map< int, int > _logicId2DetId

◆ insertConfigDataArraySet()

template<class DATT , class ICONF >
void EcalCondDBInterface::insertConfigDataArraySet ( const std::vector< DATT > &  data,
ICONF *  iconf 
)
inlinenoexcept

Definition at line 448 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, gather_cfg::cout, data, MillePedeFileConverter_cfg::e, and EcalDBConnection::env.

448  {
449  try {
450  iconf->setConnection(env, conn);
451  // if it has not yet been written then write
452  if (iconf->getId() == 0) {
453  std::cout << "EcalCondDBInterface>> config_id was not set we retrieve it from DB" << std::endl;
454  iconf->fetchID();
455  }
456  if (iconf->getId() == 0) {
457  std::cout << "EcalCondDBInterface>> configuration info was not written we write it" << std::endl;
458  iconf->writeDB();
459  }
460 
461  DATT dataIface;
462  dataIface.setConnection(env, conn);
463  dataIface.prepareWrite();
464 
465  dataIface.writeArrayDB(data, iconf);
466  conn->commit();
467 
468  dataIface.terminateWriteStatement();
469 
470  } catch (std::runtime_error& e) {
471  conn->rollback();
472  throw(e);
473  } catch (...) {
474  conn->rollback();
475  throw(std::runtime_error("EcalCondDBInterface::insertConfigDataArraySet: Unknown exception caught"));
476  }
477  }
oracle::occi::Environment * env
oracle::occi::Connection * conn
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ insertConfigDataSet()

template<class DATT , class ICONF >
void EcalCondDBInterface::insertConfigDataSet ( const std::vector< DATT >  data,
ICONF *  iconf 
)
inlinenoexcept

Definition at line 411 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, gather_cfg::cout, data, MillePedeFileConverter_cfg::e, EcalDBConnection::env, and AlCaHLTBitMon_ParallelJobs::p.

411  {
412  try {
413  iconf->setConnection(env, conn);
414  // if it has not yet been written then write
415  if (iconf->getId() == 0) {
416  std::cout << "EcalCondDBInterface>> config_id was not set we retrieve it from DB" << std::endl;
417  iconf->fetchID();
418  }
419  if (iconf->getId() == 0) {
420  std::cout << "EcalCondDBInterface>> configuration info was not written we write it" << std::endl;
421  iconf->writeDB();
422  }
423 
424  DATT dataIface;
425  dataIface.setConnection(env, conn);
426  dataIface.prepareWrite();
427 
428  const DATT* dataitem;
429 
430  for (int p = 0; p != data->size(); ++p) {
431  dataitem = data[p];
432  dataIface.writeDB(dataitem, iconf);
433  }
434  conn->commit();
435  dataIface.terminateWriteStatement();
436  } catch (std::runtime_error& e) {
437  conn->rollback();
438  throw(e);
439  } catch (...) {
440  conn->rollback();
441  throw(std::runtime_error("EcalCondDBInterface::insertConfigDataSet: Unknown exception caught"));
442  }
443  }
oracle::occi::Environment * env
oracle::occi::Connection * conn
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ insertConfigSet()

template<class ICONF >
void EcalCondDBInterface::insertConfigSet ( ICONF *  iconf)
inlinenoexcept

Definition at line 365 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, gather_cfg::cout, MillePedeFileConverter_cfg::e, and EcalDBConnection::env.

Referenced by EcalTPGDBApp::writeToConfDB_Delay(), EcalTPGDBApp::writeToConfDB_Spike(), EcalTPGDBApp::writeToConfDB_TPGFgr(), EcalTPGDBApp::writeToConfDB_TPGLinearCoef(), EcalTPGDBApp::writeToConfDB_TPGLUT(), EcalTPGDBApp::writeToConfDB_TPGMain(), EcalTPGDBApp::writeToConfDB_TPGPedestals(), EcalTPGDBApp::writeToConfDB_TPGSliding(), EcalTPGDBApp::writeToConfDB_TPGWeight(), and EcalTPGDBApp::writeToConfDB_TPGWeight_doubleWeights().

365  {
366  try {
367  iconf->setConnection(env, conn);
368  iconf->prepareWrite();
369  // if it has not yet been written then write
370  iconf->writeDB();
371  std::cout << "iconf inserted with ID=" << iconf->getId() << std::endl;
372  conn->commit();
373  iconf->terminateWriteStatement();
374  } catch (std::runtime_error& e) {
375  conn->rollback();
376  throw(e);
377  } catch (...) {
378  conn->rollback();
379  throw(std::runtime_error("EcalCondDBInterface::insertDataSet: Unknown exception caught"));
380  }
381  }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ insertDataArraySet()

template<class DATT , class IOVT >
void EcalCondDBInterface::insertDataArraySet ( const std::map< EcalLogicID, DATT > *  data,
IOVT *  iov 
)
inlinenoexcept

Definition at line 298 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, gather_cfg::cout, data, MillePedeFileConverter_cfg::e, and EcalDBConnection::env.

Referenced by ecaldqm::IntegrityWriter::run(), ecaldqm::LaserWriter::run(), ecaldqm::PedestalWriter::run(), ecaldqm::PresampleWriter::run(), ecaldqm::TestPulseWriter::run(), ecaldqm::TimingWriter::run(), ecaldqm::LedWriter::run(), ecaldqm::OccupancyWriter::run(), EcalTPGDBApp::writeToConfDB_Delay(), EcalTPGDBApp::writeToConfDB_Spike(), EcalTPGDBApp::writeToConfDB_TPGFgr(), EcalTPGDBApp::writeToConfDB_TPGLinearCoef(), EcalTPGDBApp::writeToConfDB_TPGLUT(), EcalTPGDBApp::writeToConfDB_TPGPedestals(), EcalTPGDBApp::writeToConfDB_TPGSliding(), EcalTPGDBApp::writeToConfDB_TPGWeight(), and EcalTPGDBApp::writeToConfDB_TPGWeight_doubleWeights().

298  {
299  try {
300  iov->setConnection(env, conn);
301  if (iov->getID() == 0) {
302  std::cout << "IOV was not set we retrieve it from DB" << std::endl;
303  iov->fetchID();
304  }
305  if (iov->getID() == 0) {
306  std::cout << "IOV was not written we write it" << std::endl;
307  iov->writeDB();
308  }
309 
310  std::cout << "id=" << iov->getID() << std::endl;
311 
312  DATT dataIface;
313  dataIface.setConnection(env, conn);
314  dataIface.prepareWrite();
315 
316  dataIface.writeArrayDB(data, iov);
317  conn->commit();
318 
319  dataIface.terminateWriteStatement();
320 
321  } catch (std::runtime_error& e) {
322  conn->rollback();
323  throw(e);
324  } catch (...) {
325  conn->rollback();
326  throw(std::runtime_error("EcalCondDBInterface::insertDataSet: Unknown exception caught"));
327  }
328  }
oracle::occi::Environment * env
oracle::occi::Connection * conn
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ insertDataSet()

template<class DATT , class IOVT >
void EcalCondDBInterface::insertDataSet ( const std::map< EcalLogicID, DATT > *  data,
IOVT *  iov 
)
inlinenoexcept

Definition at line 260 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, gather_cfg::cout, data, MillePedeFileConverter_cfg::e, EcalDBConnection::env, and AlCaHLTBitMon_ParallelJobs::p.

Referenced by ecaldqm::TestPulseWriter::run(), ecaldqm::SummaryWriter::run(), EcalPedOffset::writeDb(), and EcalTPGDBApp::writeToConfDB_TPGWeight_doubleWeights().

260  {
261  try {
262  iov->setConnection(env, conn);
263  // if it has not yet been written then write
264  if (iov->getID() == 0) {
265  std::cout << "IOV was not set we retrieve it from DB" << std::endl;
266  iov->fetchID();
267  }
268  if (iov->getID() == 0) {
269  std::cout << "IOV was not written we write it" << std::endl;
270  iov->writeDB();
271  }
272 
273  DATT dataIface;
274  dataIface.setConnection(env, conn);
275  dataIface.prepareWrite();
276 
277  const EcalLogicID* channel;
278  const DATT* dataitem;
279  typedef typename std::map<EcalLogicID, DATT>::const_iterator CI;
280  for (CI p = data->begin(); p != data->end(); ++p) {
281  channel = &(p->first);
282  dataitem = &(p->second);
283  dataIface.writeDB(channel, dataitem, iov);
284  }
285  conn->commit();
286  dataIface.terminateWriteStatement();
287  } catch (std::runtime_error& e) {
288  conn->rollback();
289  throw(e);
290  } catch (...) {
291  conn->rollback();
292  throw(std::runtime_error("EcalCondDBInterface::insertDataSet: Unknown exception caught"));
293  }
294  }
oracle::occi::Environment * env
oracle::occi::Connection * conn
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ insertDataSetVector()

template<class DATT , class IOVT >
void EcalCondDBInterface::insertDataSetVector ( const std::vector< EcalLogicID > &  ecid,
const std::vector< IOVT > &  run_iov,
const std::vector< DATT > &  data 
)
inlinenoexcept

Definition at line 331 of file EcalCondDBInterface.h.

References EcalDBConnection::conn, data, MillePedeFileConverter_cfg::e, EcalDBConnection::env, and mps_fire::i.

333  {
334  int nruns = run_iov.size();
335 
336  if (run_iov.size() != ecid.size() && ecid.size() != data.size()) {
337  throw(std::runtime_error("EcalCondDBInterface::insertDataSetVector: vector sizes are different.."));
338  }
339 
340  try {
341  DATT dataIface;
342  dataIface.setConnection(env, conn);
343  dataIface.prepareWrite();
344 
345  for (int i = 0; i < nruns; i++) {
346  run_iov[i].setConnection(env, conn);
347  run_iov[i].writeDB();
348 
349  dataIface.writeDB(&ecid[i], &data[i], &run_iov[i]);
350 
351  conn->commit();
352  }
353  } catch (std::runtime_error& e) {
354  conn->rollback();
355  throw(e);
356  } catch (...) {
357  conn->rollback();
358  throw(std::runtime_error("EcalCondDBInterface::insertDataSet: Unknown exception caught"));
359  }
360  }
oracle::occi::Environment * env
oracle::occi::Connection * conn
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ insertDCUIOV()

void EcalCondDBInterface::insertDCUIOV ( DCUIOV iov)
noexcept

Insert a DCU IOV object. Nothing is committed in the event of an exception

Definition at line 663 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

663  {
664  try {
665  iov->setConnection(env, conn);
666  iov->writeDB();
667  } catch (std::runtime_error& e) {
668  conn->rollback();
669  throw(e);
670  }
671  conn->commit();
672 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
int writeDB() noexcept(false)
Definition: DCUIOV.cc:126
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ insertLmfDat() [1/2]

void EcalCondDBInterface::insertLmfDat ( LMFDat dat)
noexcept

Definition at line 549 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

549  {
550  try {
551  dat->setConnection(env, conn);
552  dat->writeDB();
553  } catch (std::runtime_error& e) {
554  conn->rollback();
555  throw(e);
556  }
557  conn->commit();
558 }
int writeDB() noexcept(false) override
Definition: LMFDat.cc:337
oracle::occi::Environment * env
oracle::occi::Connection * conn
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ insertLmfDat() [2/2]

void EcalCondDBInterface::insertLmfDat ( std::list< LMFDat *>  dat)
noexcept

Definition at line 560 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, web.browse_db::env, and mps_fire::i.

560  {
561  try {
562  std::list<LMFDat*>::iterator i = dat.begin();
563  std::list<LMFDat*>::iterator e = dat.end();
564  while (i != e) {
565  (*i)->setConnection(env, conn);
566  (*i)->writeDB();
567  i++;
568  }
569  } catch (std::runtime_error& e) {
570  conn->rollback();
571  throw(e);
572  }
573  conn->commit();
574 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ insertLmfIOV()

void EcalCondDBInterface::insertLmfIOV ( LMFIOV iov)
noexcept

Definition at line 538 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

538  {
539  try {
540  iov->setConnection(env, conn);
541  iov->writeDB();
542  } catch (std::runtime_error& e) {
543  conn->rollback();
544  throw(e);
545  }
546  conn->commit();
547 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
virtual int writeDB() noexcept(false)
Definition: LMFUnique.cc:316
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ insertLmfLmrSubIOV()

void EcalCondDBInterface::insertLmfLmrSubIOV ( LMFLmrSubIOV iov)
noexcept

Definition at line 527 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

527  {
528  try {
529  iov->setConnection(env, conn);
530  iov->writeDB();
531  } catch (std::runtime_error& e) {
532  conn->rollback();
533  throw(e);
534  }
535  conn->commit();
536 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
virtual int writeDB() noexcept(false)
Definition: LMFUnique.cc:316
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ insertLmfRunIOV()

void EcalCondDBInterface::insertLmfRunIOV ( LMFRunIOV iov)
noexcept

Definition at line 576 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

576  {
577  try {
578  iov->setConnection(env, conn);
579  iov->writeDB();
580  } catch (std::runtime_error& e) {
581  conn->rollback();
582  throw(e);
583  }
584  conn->commit();
585 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
virtual int writeDB() noexcept(false)
Definition: LMFUnique.cc:316
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ insertLmfSeq()

void EcalCondDBInterface::insertLmfSeq ( LMFSeqDat iov)
noexcept

Definition at line 516 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

516  {
517  try {
518  iov->setConnection(env, conn);
519  iov->writeDB();
520  } catch (std::runtime_error& e) {
521  conn->rollback();
522  throw(e);
523  }
524  conn->commit();
525 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
virtual int writeDB() noexcept(false)
Definition: LMFUnique.cc:316
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ insertMonRunIOV()

void EcalCondDBInterface::insertMonRunIOV ( MonRunIOV iov)
noexcept

Insert a monitoring run object. Nothing is committed in the event of an exception

Definition at line 652 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

Referenced by EcalCondDBWriter::dqmEndJob().

652  {
653  try {
654  iov->setConnection(env, conn);
655  iov->writeDB();
656  } catch (std::runtime_error& e) {
657  conn->rollback();
658  throw(e);
659  }
660  conn->commit();
661 }
int writeDB() noexcept(false)
Definition: MonRunIOV.cc:163
oracle::occi::Environment * env
oracle::occi::Connection * conn
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ insertRunIOV()

void EcalCondDBInterface::insertRunIOV ( RunIOV iov)
noexcept

Insert a run IOV object. Nothing is committed in the event of an exception

Definition at line 505 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

Referenced by EcalCondDBWriter::dqmEndJob().

505  {
506  try {
507  iov->setConnection(env, conn);
508  iov->writeDB();
509  } catch (std::runtime_error& e) {
510  conn->rollback();
511  throw(e);
512  }
513  conn->commit();
514 }
oracle::occi::Environment * env
oracle::occi::Connection * conn
int writeDB() noexcept(false)
Definition: RunIOV.cc:140
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ updateRunConfig()

void EcalCondDBInterface::updateRunConfig ( ODRunConfigInfo od)
noexcept

Definition at line 620 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, web.browse_db::env, and submitPVValidationJobs::od.

620  {
621  try {
622  od->setConnection(env, conn);
623  od->updateDefaultCycle();
624  } catch (std::runtime_error& e) {
625  conn->rollback();
626  throw(e);
627  }
628  conn->commit();
629 }
oracle::occi::Environment * env
oracle::occi::Connection * conn

◆ updateRunIOV()

void EcalCondDBInterface::updateRunIOV ( RunIOV iov)
noexcept

Definition at line 587 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

587  {
588  try {
589  iov->setConnection(env, conn);
590  iov->updateEndTimeDB();
591  } catch (std::runtime_error& e) {
592  conn->rollback();
593  throw(e);
594  }
595  conn->commit();
596 }
int updateEndTimeDB() noexcept(false)
Definition: RunIOV.cc:188
oracle::occi::Environment * env
oracle::occi::Connection * conn
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ updateRunIOVEndTime()

void EcalCondDBInterface::updateRunIOVEndTime ( RunIOV iov)
noexcept

Definition at line 598 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

598  {
599  try {
600  iov->setConnection(env, conn);
601  iov->updateEndTimeDB();
602  } catch (std::runtime_error& e) {
603  conn->rollback();
604  throw(e);
605  }
606  conn->commit();
607 }
int updateEndTimeDB() noexcept(false)
Definition: RunIOV.cc:188
oracle::occi::Environment * env
oracle::occi::Connection * conn
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

◆ updateRunIOVStartTime()

void EcalCondDBInterface::updateRunIOVStartTime ( RunIOV iov)
noexcept

Definition at line 609 of file EcalCondDBInterface.cc.

References getInfo::conn, MillePedeFileConverter_cfg::e, and web.browse_db::env.

609  {
610  try {
611  iov->setConnection(env, conn);
612  iov->updateStartTimeDB();
613  } catch (std::runtime_error& e) {
614  conn->rollback();
615  throw(e);
616  }
617  conn->commit();
618 }
int updateStartTimeDB() noexcept(false)
Definition: RunIOV.cc:273
oracle::occi::Environment * env
oracle::occi::Connection * conn
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23

Member Data Documentation

◆ _detId2LogicId

std::map<int, int> EcalCondDBInterface::_detId2LogicId
private

Definition at line 634 of file EcalCondDBInterface.h.

Referenced by getDetId2LogicIdMap(), and getLogicIdFromDetId().

◆ _logicId2DetId

std::map<int, int> EcalCondDBInterface::_logicId2DetId
private

◆ dh

DateHandler* EcalCondDBInterface::dh
private