#include <OnlineDB/EcalCondDB/interface/MonPedestalsDat.h>
Public Member Functions | |
float | getPedMeanG1 () const |
float | getPedMeanG12 () const |
float | getPedMeanG6 () const |
float | getPedRMSG1 () const |
float | getPedRMSG12 () const |
float | getPedRMSG6 () const |
std::string | getTable () |
bool | getTaskStatus () const |
MonPedestalsDat () | |
void | setPedMeanG1 (float mean) |
void | setPedMeanG12 (float mean) |
void | setPedMeanG6 (float mean) |
void | setPedRMSG1 (float rms) |
void | setPedRMSG12 (float rms) |
void | setPedRMSG6 (float rms) |
void | setTaskStatus (bool status) |
~MonPedestalsDat () | |
Private Member Functions | |
void | fetchData (std::map< EcalLogicID, MonPedestalsDat > *fillMap, MonRunIOV *iov) throw (std::runtime_error) |
void | prepareWrite () throw (std::runtime_error) |
void | writeArrayDB (const std::map< EcalLogicID, MonPedestalsDat > *data, MonRunIOV *iov) throw (std::runtime_error) |
void | writeDB (const EcalLogicID *ecid, const MonPedestalsDat *item, MonRunIOV *iov) throw (std::runtime_error) |
Private Attributes | |
float | m_pedMeanG1 |
float | m_pedMeanG12 |
float | m_pedMeanG6 |
float | m_pedRMSG1 |
float | m_pedRMSG12 |
float | m_pedRMSG6 |
bool | m_taskStatus |
Friends | |
class | EcalCondDBInterface |
Definition at line 11 of file MonPedestalsDat.h.
MonPedestalsDat::MonPedestalsDat | ( | ) |
Definition at line 11 of file MonPedestalsDat.cc.
References IDBObject::m_conn, IDBObject::m_env, m_pedMeanG1, m_pedMeanG12, m_pedMeanG6, m_pedRMSG1, m_pedRMSG12, m_pedRMSG6, IDataItem::m_readStmt, m_taskStatus, IDataItem::m_writeStmt, and NULL.
00012 { 00013 m_env = NULL; 00014 m_conn = NULL; 00015 m_writeStmt = NULL; 00016 m_readStmt = NULL; 00017 00018 m_pedMeanG1 = 0; 00019 m_pedMeanG6 = 0; 00020 m_pedMeanG12 = 0; 00021 m_pedRMSG1 = 0; 00022 m_pedRMSG6 = 0; 00023 m_pedRMSG12 = 0; 00024 m_taskStatus = 0; 00025 }
MonPedestalsDat::~MonPedestalsDat | ( | ) |
void MonPedestalsDat::fetchData | ( | std::map< EcalLogicID, MonPedestalsDat > * | fillMap, | |
MonRunIOV * | iov | |||
) | throw (std::runtime_error) [private] |
float MonPedestalsDat::getPedMeanG1 | ( | ) | const [inline] |
Definition at line 21 of file MonPedestalsDat.h.
References m_pedMeanG1.
Referenced by EcalTPGParamBuilder::analyze(), popcon::EcalPedestalsHandler::getNewObjectsH2(), popcon::EcalPedestalsHandler::getNewObjectsP5(), and writeArrayDB().
00021 { return m_pedMeanG1; }
float MonPedestalsDat::getPedMeanG12 | ( | ) | const [inline] |
Definition at line 27 of file MonPedestalsDat.h.
References m_pedMeanG12.
Referenced by EcalTPGParamBuilder::analyze(), popcon::EcalPedestalsHandler::getNewObjectsH2(), popcon::EcalPedestalsHandler::getNewObjectsP5(), and writeArrayDB().
00027 { return m_pedMeanG12; }
float MonPedestalsDat::getPedMeanG6 | ( | ) | const [inline] |
Definition at line 24 of file MonPedestalsDat.h.
References m_pedMeanG6.
Referenced by EcalTPGParamBuilder::analyze(), popcon::EcalPedestalsHandler::getNewObjectsH2(), popcon::EcalPedestalsHandler::getNewObjectsP5(), and writeArrayDB().
00024 { return m_pedMeanG6; }
float MonPedestalsDat::getPedRMSG1 | ( | ) | const [inline] |
Definition at line 30 of file MonPedestalsDat.h.
References m_pedRMSG1.
Referenced by EcalTPGParamBuilder::analyze(), popcon::EcalPedestalsHandler::getNewObjectsH2(), popcon::EcalPedestalsHandler::getNewObjectsP5(), and writeArrayDB().
00030 { return m_pedRMSG1; }
float MonPedestalsDat::getPedRMSG12 | ( | ) | const [inline] |
Definition at line 36 of file MonPedestalsDat.h.
References m_pedRMSG12.
Referenced by EcalTPGParamBuilder::analyze(), popcon::EcalPedestalsHandler::getNewObjectsH2(), popcon::EcalPedestalsHandler::getNewObjectsP5(), and writeArrayDB().
00036 { return m_pedRMSG12; }
float MonPedestalsDat::getPedRMSG6 | ( | ) | const [inline] |
Definition at line 33 of file MonPedestalsDat.h.
References m_pedRMSG6.
Referenced by EcalTPGParamBuilder::analyze(), popcon::EcalPedestalsHandler::getNewObjectsH2(), popcon::EcalPedestalsHandler::getNewObjectsP5(), and writeArrayDB().
00033 { return m_pedRMSG6; }
std::string MonPedestalsDat::getTable | ( | ) | [inline, virtual] |
bool MonPedestalsDat::getTaskStatus | ( | ) | const [inline] |
Definition at line 39 of file MonPedestalsDat.h.
References m_taskStatus.
Referenced by writeArrayDB().
00039 { return m_taskStatus; }
void MonPedestalsDat::prepareWrite | ( | ) | throw (std::runtime_error) [private, virtual] |
Implements IDataItem.
Definition at line 35 of file MonPedestalsDat.cc.
References IDBObject::checkConnection(), e, IDBObject::m_conn, and IDataItem::m_writeStmt.
00037 { 00038 this->checkConnection(); 00039 00040 try { 00041 m_writeStmt = m_conn->createStatement(); 00042 m_writeStmt->setSQL("INSERT INTO mon_pedestals_dat (iov_id, logic_id, " 00043 "ped_mean_g1, ped_mean_g6, ped_mean_g12, " 00044 "ped_rms_g1, ped_rms_g6, ped_rms_g12, task_status) " 00045 "VALUES (:iov_id, :logic_id, " 00046 ":ped_mean_g1, :ped_mean_g6, :ped_mean_g12, " 00047 ":ped_rms_g1, :ped_rms_g6, :ped_rms_g12, :task_status)"); 00048 } catch (SQLException &e) { 00049 throw(runtime_error("MonPedestalsDat::prepareWrite(): "+e.getMessage())); 00050 } 00051 }
void MonPedestalsDat::setPedMeanG1 | ( | float | mean | ) | [inline] |
Definition at line 20 of file MonPedestalsDat.h.
References m_pedMeanG1.
Referenced by EBPedestalClient::writeDb(), and EEPedestalClient::writeDb().
00020 { m_pedMeanG1 = mean; }
void MonPedestalsDat::setPedMeanG12 | ( | float | mean | ) | [inline] |
Definition at line 26 of file MonPedestalsDat.h.
References m_pedMeanG12.
Referenced by EBPedestalClient::writeDb(), and EEPedestalClient::writeDb().
00026 { m_pedMeanG12 = mean; }
void MonPedestalsDat::setPedMeanG6 | ( | float | mean | ) | [inline] |
Definition at line 23 of file MonPedestalsDat.h.
References m_pedMeanG6.
Referenced by EBPedestalClient::writeDb(), and EEPedestalClient::writeDb().
00023 { m_pedMeanG6 = mean; }
void MonPedestalsDat::setPedRMSG1 | ( | float | rms | ) | [inline] |
Definition at line 29 of file MonPedestalsDat.h.
References m_pedRMSG1.
Referenced by EBPedestalClient::writeDb(), and EEPedestalClient::writeDb().
00029 { m_pedRMSG1 = rms; }
void MonPedestalsDat::setPedRMSG12 | ( | float | rms | ) | [inline] |
Definition at line 35 of file MonPedestalsDat.h.
References m_pedRMSG12.
Referenced by EBPedestalClient::writeDb(), and EEPedestalClient::writeDb().
00035 { m_pedRMSG12 = rms; }
void MonPedestalsDat::setPedRMSG6 | ( | float | rms | ) | [inline] |
Definition at line 32 of file MonPedestalsDat.h.
References m_pedRMSG6.
Referenced by EBPedestalClient::writeDb(), and EEPedestalClient::writeDb().
00032 { m_pedRMSG6 = rms; }
Definition at line 38 of file MonPedestalsDat.h.
References m_taskStatus.
Referenced by EBPedestalClient::writeDb(), and EEPedestalClient::writeDb().
00038 { m_taskStatus = status; }
void MonPedestalsDat::writeArrayDB | ( | const std::map< EcalLogicID, MonPedestalsDat > * | data, | |
MonRunIOV * | iov | |||
) | throw (std::runtime_error) [private] |
Definition at line 136 of file MonPedestalsDat.cc.
References IDBObject::checkConnection(), IDataItem::checkPrepare(), count, data, EcalLogicID::getLogicID(), getPedMeanG1(), getPedMeanG12(), getPedMeanG6(), getPedRMSG1(), getPedRMSG12(), getPedRMSG6(), getTaskStatus(), IDataItem::m_writeStmt, st, t, tt, w, ww, x, y, and z.
00138 { 00139 this->checkConnection(); 00140 this->checkPrepare(); 00141 00142 int iovID = iov->fetchID(); 00143 if (!iovID) { throw(runtime_error("MonPedestalsDat::writeArrayDB: IOV not in DB")); } 00144 00145 00146 int nrows=data->size(); 00147 int* ids= new int[nrows]; 00148 int* iovid_vec= new int[nrows]; 00149 float* xx= new float[nrows]; 00150 float* yy= new float[nrows]; 00151 float* zz= new float[nrows]; 00152 float* ww= new float[nrows]; 00153 float* uu= new float[nrows]; 00154 float* tt= new float[nrows]; 00155 int* st= new int[nrows]; 00156 00157 ub2* ids_len= new ub2[nrows]; 00158 ub2* iov_len= new ub2[nrows]; 00159 ub2* x_len= new ub2[nrows]; 00160 ub2* y_len= new ub2[nrows]; 00161 ub2* z_len= new ub2[nrows]; 00162 ub2* w_len= new ub2[nrows]; 00163 ub2* u_len= new ub2[nrows]; 00164 ub2* t_len= new ub2[nrows]; 00165 ub2* st_len= new ub2[nrows]; 00166 00167 const EcalLogicID* channel; 00168 const MonPedestalsDat* dataitem; 00169 int count=0; 00170 typedef map< EcalLogicID, MonPedestalsDat >::const_iterator CI; 00171 for (CI p = data->begin(); p != data->end(); ++p) { 00172 channel = &(p->first); 00173 int logicID = channel->getLogicID(); 00174 if (!logicID) { throw(runtime_error("MonPedestalsDat::writeArrayDB: Bad EcalLogicID")); } 00175 ids[count]=logicID; 00176 iovid_vec[count]=iovID; 00177 00178 dataitem = &(p->second); 00179 // dataIface.writeDB( channel, dataitem, iov); 00180 float x=dataitem->getPedMeanG1(); 00181 float y=dataitem->getPedMeanG6(); 00182 float z=dataitem->getPedMeanG12(); 00183 float w=dataitem->getPedRMSG1(); 00184 float u=dataitem->getPedRMSG6(); 00185 float t=dataitem->getPedRMSG12(); 00186 int statu=dataitem->getTaskStatus(); 00187 00188 00189 00190 xx[count]=x; 00191 yy[count]=y; 00192 zz[count]=z; 00193 ww[count]=w; 00194 uu[count]=u; 00195 tt[count]=t; 00196 st[count]=statu; 00197 00198 00199 ids_len[count]=sizeof(ids[count]); 00200 iov_len[count]=sizeof(iovid_vec[count]); 00201 00202 x_len[count]=sizeof(xx[count]); 00203 y_len[count]=sizeof(yy[count]); 00204 z_len[count]=sizeof(zz[count]); 00205 w_len[count]=sizeof(ww[count]); 00206 u_len[count]=sizeof(uu[count]); 00207 t_len[count]=sizeof(tt[count]); 00208 st_len[count]=sizeof(st[count]); 00209 00210 count++; 00211 } 00212 00213 00214 try { 00215 m_writeStmt->setDataBuffer(1, (dvoid*)iovid_vec, OCCIINT, sizeof(iovid_vec[0]),iov_len); 00216 m_writeStmt->setDataBuffer(2, (dvoid*)ids, OCCIINT, sizeof(ids[0]), ids_len ); 00217 m_writeStmt->setDataBuffer(3, (dvoid*)xx, OCCIFLOAT , sizeof(xx[0]), x_len ); 00218 m_writeStmt->setDataBuffer(4, (dvoid*)yy, OCCIFLOAT , sizeof(yy[0]), y_len ); 00219 m_writeStmt->setDataBuffer(5, (dvoid*)zz, OCCIFLOAT , sizeof(zz[0]), z_len ); 00220 m_writeStmt->setDataBuffer(6, (dvoid*)ww, OCCIFLOAT , sizeof(ww[0]), w_len ); 00221 m_writeStmt->setDataBuffer(7, (dvoid*)uu, OCCIFLOAT , sizeof(uu[0]), u_len ); 00222 m_writeStmt->setDataBuffer(8, (dvoid*)tt, OCCIFLOAT , sizeof(tt[0]), t_len ); 00223 m_writeStmt->setDataBuffer(9, (dvoid*)st, OCCIINT , sizeof(st[0]), st_len ); 00224 00225 00226 m_writeStmt->executeArrayUpdate(nrows); 00227 00228 delete [] ids; 00229 delete [] iovid_vec; 00230 delete [] xx; 00231 delete [] yy; 00232 delete [] zz; 00233 delete [] ww; 00234 delete [] uu; 00235 delete [] tt; 00236 delete [] st; 00237 00238 delete [] ids_len; 00239 delete [] iov_len; 00240 delete [] x_len; 00241 delete [] y_len; 00242 delete [] z_len; 00243 delete [] w_len; 00244 delete [] u_len; 00245 delete [] t_len; 00246 delete [] st_len; 00247 00248 00249 00250 } catch (SQLException &e) { 00251 throw(runtime_error("MonPedestalsDat::writeArrayDB(): "+e.getMessage())); 00252 } 00253 }
void MonPedestalsDat::writeDB | ( | const EcalLogicID * | ecid, | |
const MonPedestalsDat * | item, | |||
MonRunIOV * | iov | |||
) | throw (std::runtime_error) [private] |
Definition at line 55 of file MonPedestalsDat.cc.
References IDBObject::checkConnection(), IDataItem::checkPrepare(), e, and IDataItem::m_writeStmt.
00057 { 00058 this->checkConnection(); 00059 this->checkPrepare(); 00060 00061 int iovID = iov->fetchID(); 00062 if (!iovID) { throw(runtime_error("MonPedestalsDat::writeDB: IOV not in DB")); } 00063 00064 int logicID = ecid->getLogicID(); 00065 if (!logicID) { throw(runtime_error("MonPedestalsDat::writeDB: Bad EcalLogicID")); } 00066 00067 try { 00068 m_writeStmt->setInt(1, iovID); 00069 m_writeStmt->setInt(2, logicID); 00070 m_writeStmt->setFloat(3, item->getPedMeanG1()); 00071 m_writeStmt->setFloat(4, item->getPedMeanG6()); 00072 m_writeStmt->setFloat(5, item->getPedMeanG12()); 00073 m_writeStmt->setFloat(6, item->getPedRMSG1()); 00074 m_writeStmt->setFloat(7, item->getPedRMSG6()); 00075 m_writeStmt->setFloat(8, item->getPedRMSG12()); 00076 m_writeStmt->setInt(9, item->getTaskStatus()); 00077 00078 m_writeStmt->executeUpdate(); 00079 } catch (SQLException &e) { 00080 throw(runtime_error("MonPedestalsDat::writeDB(): "+e.getMessage())); 00081 } 00082 }
friend class EcalCondDBInterface [friend] |
float MonPedestalsDat::m_pedMeanG1 [private] |
Definition at line 57 of file MonPedestalsDat.h.
Referenced by getPedMeanG1(), MonPedestalsDat(), and setPedMeanG1().
float MonPedestalsDat::m_pedMeanG12 [private] |
Definition at line 59 of file MonPedestalsDat.h.
Referenced by getPedMeanG12(), MonPedestalsDat(), and setPedMeanG12().
float MonPedestalsDat::m_pedMeanG6 [private] |
Definition at line 58 of file MonPedestalsDat.h.
Referenced by getPedMeanG6(), MonPedestalsDat(), and setPedMeanG6().
float MonPedestalsDat::m_pedRMSG1 [private] |
Definition at line 60 of file MonPedestalsDat.h.
Referenced by getPedRMSG1(), MonPedestalsDat(), and setPedRMSG1().
float MonPedestalsDat::m_pedRMSG12 [private] |
Definition at line 62 of file MonPedestalsDat.h.
Referenced by getPedRMSG12(), MonPedestalsDat(), and setPedRMSG12().
float MonPedestalsDat::m_pedRMSG6 [private] |
Definition at line 61 of file MonPedestalsDat.h.
Referenced by getPedRMSG6(), MonPedestalsDat(), and setPedRMSG6().
bool MonPedestalsDat::m_taskStatus [private] |
Definition at line 63 of file MonPedestalsDat.h.
Referenced by getTaskStatus(), MonPedestalsDat(), and setTaskStatus().