CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes | Friends
FEConfigBadXTDat Class Reference

#include <FEConfigBadXTDat.h>

Inheritance diagram for FEConfigBadXTDat:
IODConfig IDBObject

Public Member Functions

 FEConfigBadXTDat ()
 
int getFedId () const
 
int getId () const
 
int getStatus () const
 
std::string getTable ()
 
int getTCCId () const
 
int getTTId () const
 
int getXTId () const
 
void setFedId (int dac)
 
void setId (int dac)
 
void setStatus (int dac)
 
void setTCCId (int dac)
 
void setTTId (int dac)
 
void setXTId (int dac)
 
 ~FEConfigBadXTDat ()
 
- Public Member Functions inherited from IODConfig
std::string getConfigTag ()
 
void setConfigTag (std::string x)
 
- Public Member Functions inherited from IDBObject
oracle::occi::Connection * getConn () const
 
oracle::occi::Environment * getEnv () const
 
void setConnection (oracle::occi::Environment *env, oracle::occi::Connection *conn)
 
virtual ~IDBObject ()
 

Private Member Functions

void fetchData (std::vector< FEConfigBadXTDat > *fillMap, FEConfigBadXTInfo *iov) throw (std::runtime_error)
 
void prepareWrite () throw (std::runtime_error)
 
void writeArrayDB (const std::vector< FEConfigBadXTDat > data, FEConfigBadXTInfo *iov) throw (std::runtime_error)
 
void writeDB (const FEConfigBadXTDat *item, FEConfigBadXTInfo *iov) throw (std::runtime_error)
 

Private Attributes

int m_fed
 
int m_ID
 
int m_t1
 
int m_tcc
 
int m_tt
 
int m_xt
 

Friends

class EcalCondDBInterface
 

Additional Inherited Members

- Public Types inherited from IODConfig
typedef oracle::occi::Clob Clob
 
typedef oracle::occi::SQLException SQLException
 
typedef oracle::occi::Statement Statement
 
typedef oracle::occi::Stream Stream
 
- Public Attributes inherited from IODConfig
std::string m_config_tag
 
- Static Public Attributes inherited from IDBObject
static int const ECALDB_NROWS =1024
 
- Protected Member Functions inherited from IODConfig
void checkPrepare () throw (std::runtime_error)
 
void createReadStatement () throw (std::runtime_error)
 
void populateClob (Clob &clob, std::string fname, unsigned int bufsize) throw (std::runtime_error)
 
unsigned char * readClob (Clob &clob, int size) throw (std::runtime_error)
 
void setPrefetchRowCount (int ncount) throw (std::runtime_error)
 
void terminateReadStatement () throw (std::runtime_error)
 
void terminateWriteStatement () throw (std::runtime_error)
 
- Protected Member Functions inherited from IDBObject
void checkConnection () const throw (std::runtime_error)
 
- Protected Attributes inherited from IODConfig
Statementm_readStmt
 
Statementm_writeStmt
 
- Protected Attributes inherited from IDBObject
oracle::occi::Connection * m_conn
 
oracle::occi::Environment * m_env
 

Detailed Description

Definition at line 10 of file FEConfigBadXTDat.h.

Constructor & Destructor Documentation

FEConfigBadXTDat::FEConfigBadXTDat ( )

Definition at line 10 of file FEConfigBadXTDat.cc.

References NULL.

11 {
12  m_env = NULL;
13  m_conn = NULL;
14  m_writeStmt = NULL;
15  m_readStmt = NULL;
16 
17  m_tcc = 0;
18  m_fed = 0;
19  m_tt = 0;
20  m_xt = 0;
21  m_t1 = 0;
22 
23 }
oracle::occi::Environment * m_env
Definition: IDBObject.h:38
oracle::occi::Connection * m_conn
Definition: IDBObject.h:39
Statement * m_writeStmt
Definition: IODConfig.h:36
#define NULL
Definition: scimark2.h:8
Statement * m_readStmt
Definition: IODConfig.h:37
FEConfigBadXTDat::~FEConfigBadXTDat ( )

Definition at line 27 of file FEConfigBadXTDat.cc.

28 {
29 }

Member Function Documentation

void FEConfigBadXTDat::fetchData ( std::vector< FEConfigBadXTDat > *  fillMap,
FEConfigBadXTInfo iov 
)
throw (std::runtime_error
)
private

Definition at line 70 of file FEConfigBadXTDat.cc.

References alignCSCRings::e, o2o::iov, AlCaHLTBitMon_ParallelJobs::p, setFedId(), setStatus(), setTCCId(), setTTId(), and setXTId().

72 {
73  this->checkConnection();
74 
75  iov->setConnection(m_env, m_conn);
76  int iovID = iov->fetchID();
77  if (!iovID) {
78  // throw(std::runtime_error("FEConfigBadXTDat::writeDB: IOV not in DB"));
79  return;
80  }
81 
82  try {
83  m_readStmt->setSQL("SELECT * FROM " + getTable() + " WHERE rec_id = :rec_id order by tcc_id, fed_id, tt_id , cry_id ");
84  m_readStmt->setInt(1, iovID);
85  ResultSet* rset = m_readStmt->executeQuery();
86 
87  // std::vector< FEConfigBadXTDat > p;
88  FEConfigBadXTDat dat;
89  while(rset->next()) {
90  // dat.setId( rset->getInt(1) );
91  dat.setTCCId( rset->getInt(2) );
92  dat.setFedId( rset->getInt(3) );
93  dat.setTTId( rset->getInt(4) );
94  dat.setXTId( rset->getInt(5) );
95  dat.setStatus( rset->getInt(6) );
96 
97  p->push_back( dat);
98 
99  }
100  } catch (SQLException &e) {
101  throw(std::runtime_error("FEConfigBadXTDat::fetchData(): "+e.getMessage()));
102  }
103 }
oracle::occi::Environment * m_env
Definition: IDBObject.h:38
oracle::occi::Connection * m_conn
Definition: IDBObject.h:39
void setTTId(int dac)
oracle::occi::SQLException SQLException
Definition: HcalDbOmds.cc:22
void setStatus(int dac)
std::string getTable()
void setTCCId(int dac)
void setFedId(int dac)
oracle::occi::ResultSet ResultSet
Definition: HcalDbOmds.cc:21
void setXTId(int dac)
Statement * m_readStmt
Definition: IODConfig.h:37
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23
void checkConnection() const
Definition: IDBObject.h:41
int FEConfigBadXTDat::getFedId ( ) const
inline

Definition at line 23 of file FEConfigBadXTDat.h.

References m_fed.

Referenced by popcon::EcalTPGBadXTHandler::getNewObjects(), and writeArrayDB().

23 { return m_fed; }
int FEConfigBadXTDat::getId ( ) const
inline

Definition at line 20 of file FEConfigBadXTDat.h.

References m_ID.

20 { return m_ID; }
int FEConfigBadXTDat::getStatus ( void  ) const
inline

Definition at line 36 of file FEConfigBadXTDat.h.

References m_t1.

Referenced by popcon::EcalTPGBadXTHandler::getNewObjects(), and writeArrayDB().

36 { return m_t1; }
std::string FEConfigBadXTDat::getTable ( )
inlinevirtual

Implements IODConfig.

Definition at line 17 of file FEConfigBadXTDat.h.

17 { return "FE_CONFIG_BadCRYSTALS_DAT"; }
int FEConfigBadXTDat::getTCCId ( ) const
inline

Definition at line 26 of file FEConfigBadXTDat.h.

References m_tcc.

Referenced by writeArrayDB().

26 { return m_tcc; }
int FEConfigBadXTDat::getTTId ( ) const
inline

Definition at line 29 of file FEConfigBadXTDat.h.

References m_tt.

Referenced by popcon::EcalTPGBadXTHandler::getNewObjects(), and writeArrayDB().

29 { return m_tt; }
int FEConfigBadXTDat::getXTId ( ) const
inline

Definition at line 32 of file FEConfigBadXTDat.h.

References m_xt.

Referenced by popcon::EcalTPGBadXTHandler::getNewObjects(), and writeArrayDB().

32 { return m_xt; }
void FEConfigBadXTDat::prepareWrite ( )
throw (std::runtime_error
)
privatevirtual

Implements IODConfig.

Definition at line 33 of file FEConfigBadXTDat.cc.

References alignCSCRings::e.

35 {
36  this->checkConnection();
37 
38  try {
39  m_writeStmt = m_conn->createStatement();
40  m_writeStmt->setSQL("INSERT INTO "+getTable()+" (rec_id, tcc_id,fed_id, tt_id, CRY_id, status ) "
41  "VALUES (:1, :2, :3, :4, :5 ,:6 )");
42  } catch (SQLException &e) {
43  throw(std::runtime_error("FEConfigBadXTDat::prepareWrite(): "+e.getMessage()));
44  }
45 }
oracle::occi::Connection * m_conn
Definition: IDBObject.h:39
Statement * m_writeStmt
Definition: IODConfig.h:36
oracle::occi::SQLException SQLException
Definition: HcalDbOmds.cc:22
std::string getTable()
void checkConnection() const
Definition: IDBObject.h:41
void FEConfigBadXTDat::setFedId ( int  dac)
inline

Definition at line 22 of file FEConfigBadXTDat.h.

References m_fed.

Referenced by fetchData().

22 { m_fed = dac; }
void FEConfigBadXTDat::setId ( int  dac)
inline

Definition at line 19 of file FEConfigBadXTDat.h.

References m_ID.

19 { m_ID = dac; }
void FEConfigBadXTDat::setStatus ( int  dac)
inline

Definition at line 35 of file FEConfigBadXTDat.h.

References m_t1.

Referenced by fetchData().

35 { m_t1 = dac; }
void FEConfigBadXTDat::setTCCId ( int  dac)
inline

Definition at line 25 of file FEConfigBadXTDat.h.

References m_tcc.

Referenced by fetchData().

25 { m_tcc = dac; }
void FEConfigBadXTDat::setTTId ( int  dac)
inline

Definition at line 28 of file FEConfigBadXTDat.h.

References m_tt.

Referenced by fetchData().

28 { m_tt = dac; }
void FEConfigBadXTDat::setXTId ( int  dac)
inline

Definition at line 31 of file FEConfigBadXTDat.h.

References m_xt.

Referenced by fetchData().

31 { m_xt = dac; }
void FEConfigBadXTDat::writeArrayDB ( const std::vector< FEConfigBadXTDat data,
FEConfigBadXTInfo iov 
)
throw (std::runtime_error
)
private

Definition at line 107 of file FEConfigBadXTDat.cc.

References prof2calltree::count, data, alignCSCRings::e, getFedId(), getStatus(), getTCCId(), getTTId(), getXTId(), and o2o::iov.

109 {
110  this->checkConnection();
111 
112  int iovID = iov->fetchID();
113  if (!iovID) { throw(std::runtime_error("FEConfigDelays::writeArrayDB: FEConfigBadXTInfo not in DB")); }
114 
115 
116  int nrows=data.size();
117  int* ids= new int[nrows];
118  int* xx= new int[nrows];
119  int* yy= new int[nrows];
120  int* zz= new int[nrows];
121  int* z1= new int[nrows];
122  int* st= new int[nrows];
123 
124 
125 
126  ub2* ids_len= new ub2[nrows];
127  ub2* x_len= new ub2[nrows];
128  ub2* y_len= new ub2[nrows];
129  ub2* z_len= new ub2[nrows];
130  ub2* z1_len= new ub2[nrows];
131  ub2* st_len= new ub2[nrows];
132 
133 
134  FEConfigBadXTDat dataitem;
135 
136 
137  for (size_t count = 0; count != data.size(); count++) {
138  dataitem=data[count];
139  ids[count]=iovID;
140  xx[count]=dataitem.getTCCId();
141  yy[count]=dataitem.getFedId();
142  zz[count]=dataitem.getTTId();
143  z1[count]=dataitem.getXTId();
144  st[count]=dataitem.getStatus();
145 
146 
147  ids_len[count]=sizeof(ids[count]);
148  x_len[count]=sizeof(xx[count]);
149  y_len[count]=sizeof(yy[count]);
150  z_len[count]=sizeof(zz[count]);
151  z1_len[count]=sizeof(z1[count]);
152  st_len[count]=sizeof(st[count]);
153 
154  }
155 
156 
157  try {
158  m_writeStmt->setDataBuffer(1, (dvoid*)ids, OCCIINT, sizeof(ids[0]),ids_len);
159  m_writeStmt->setDataBuffer(2, (dvoid*)xx, OCCIINT , sizeof(xx[0]), x_len );
160  m_writeStmt->setDataBuffer(3, (dvoid*)yy, OCCIINT , sizeof(yy[0]), y_len );
161  m_writeStmt->setDataBuffer(4, (dvoid*)zz, OCCIINT , sizeof(zz[0]), z_len );
162  m_writeStmt->setDataBuffer(5, (dvoid*)z1, OCCIINT , sizeof(z1[0]), z1_len );
163  m_writeStmt->setDataBuffer(6, (dvoid*)st, OCCIINT , sizeof(st[0]), st_len );
164 
165  m_writeStmt->executeArrayUpdate(nrows);
166 
167  delete [] ids;
168  delete [] xx;
169  delete [] yy;
170  delete [] zz;
171  delete [] z1;
172  delete [] st;
173 
174  delete [] ids_len;
175  delete [] x_len;
176  delete [] y_len;
177  delete [] z_len;
178  delete [] z1_len;
179  delete [] st_len;
180 
181  } catch (SQLException &e) {
182  throw(std::runtime_error("FEConfigBadXTDat::writeArrayDB(): "+e.getMessage()));
183  }
184 }
Statement * m_writeStmt
Definition: IODConfig.h:36
oracle::occi::SQLException SQLException
Definition: HcalDbOmds.cc:22
int getXTId() const
int getStatus() const
int getFedId() const
int getTTId() const
int getTCCId() const
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
void checkConnection() const
Definition: IDBObject.h:41
void FEConfigBadXTDat::writeDB ( const FEConfigBadXTDat item,
FEConfigBadXTInfo iov 
)
throw (std::runtime_error
)
private

Definition at line 49 of file FEConfigBadXTDat.cc.

References alignCSCRings::e.

51 {
52  this->checkConnection();
53 
54  try {
55  m_writeStmt->setInt(1, item->getId());
56  m_writeStmt->setInt(2, item->getTCCId() );
57  m_writeStmt->setInt(3, item->getFedId());
58  m_writeStmt->setInt(4, item->getTTId() );
59  m_writeStmt->setInt(5, item->getXTId() );
60  m_writeStmt->setInt(6, item->getStatus() );
61 
62  m_writeStmt->executeUpdate();
63  } catch (SQLException &e) {
64  throw(std::runtime_error("FEConfigBadXTDat::writeDB(): "+e.getMessage()));
65  }
66 }
Statement * m_writeStmt
Definition: IODConfig.h:36
int getId() const
oracle::occi::SQLException SQLException
Definition: HcalDbOmds.cc:22
int getXTId() const
int getStatus() const
int getFedId() const
int getTTId() const
int getTCCId() const
void checkConnection() const
Definition: IDBObject.h:41

Friends And Related Function Documentation

friend class EcalCondDBInterface
friend

Definition at line 12 of file FEConfigBadXTDat.h.

Member Data Documentation

int FEConfigBadXTDat::m_fed
private

Definition at line 54 of file FEConfigBadXTDat.h.

Referenced by getFedId(), and setFedId().

int FEConfigBadXTDat::m_ID
private

Definition at line 58 of file FEConfigBadXTDat.h.

Referenced by getId(), and setId().

int FEConfigBadXTDat::m_t1
private

Definition at line 57 of file FEConfigBadXTDat.h.

Referenced by getStatus(), and setStatus().

int FEConfigBadXTDat::m_tcc
private

Definition at line 53 of file FEConfigBadXTDat.h.

Referenced by getTCCId(), and setTCCId().

int FEConfigBadXTDat::m_tt
private

Definition at line 55 of file FEConfigBadXTDat.h.

Referenced by getTTId(), and setTTId().

int FEConfigBadXTDat::m_xt
private

Definition at line 56 of file FEConfigBadXTDat.h.

Referenced by getXTId(), and setXTId().