CMS 3D CMS Logo

CSCCableRead.cc
Go to the documentation of this file.
2 #include <cstdlib>
3 #include <cassert>
4 
10  std::string db_pass;
11  env = oracle::occi::Environment::createEnvironment(oracle::occi::Environment::DEFAULT);
12  char *c_user = std::getenv("CSCMAP_AUTH_USER");
13  char *c_pass = std::getenv("CSCMAP_AUTH_PASSWORD");
14  assert(c_user);
15  assert(c_pass);
16  db_user = std::string(c_user);
17  db_pass = std::string(c_pass);
18  con = env->createConnection(db_user, db_pass, "cms_orcoff_prod");
19  std::cout << "Connection to cable DB is done." << std::endl;
20 } // end of constructor csccableread ()
25  env->terminateConnection(con);
26  oracle::occi::Environment::terminateEnvironment(env);
27 } // end of ~csccableread ()
28 
29 void csccableread::cable_read(int chamber_index,
30  std::string *chamber_label,
31  float *cfeb_length,
32  std::string *cfeb_rev,
33  float *alct_length,
34  std::string *alct_rev,
35  float *cfeb_tmb_skew_delay,
36  float *cfeb_timing_corr) {
37  oracle::occi::Statement *stmt = con->createStatement();
38  stmt->setSQL("begin cms_emu_cern.cable_read.cable(:1, :2, :3, :4, :5, :6, :7, :8); end;");
39 
40  // stmt->setInt (1, chamber_index);
41  // stmt->registerOutParam(2, oracle::occi::OCCISTRING, 9);
42  // stmt->registerOutParam(3, oracle::occi::OCCIINT);
43  // stmt->registerOutParam(4, oracle::occi::OCCISTRING, 1);
44  // stmt->registerOutParam(5, oracle::occi::OCCIINT);
45  // stmt->registerOutParam(6, oracle::occi::OCCISTRING, 1);
46  // stmt->registerOutParam(7, oracle::occi::OCCIINT);
47  // stmt->registerOutParam(8, oracle::occi::OCCIINT);
48  //
49  // stmt->execute(); //execute procedure
50  //
51  // *chamber_label = stmt->getString(2);
52  // *cfeb_length = stmt->getInt(3);
53  // *cfeb_rev = stmt->getString(4);
54  // *alct_length = stmt->getInt(5);
55  // *alct_rev = stmt->getString(6);
56  // *cfeb_tmb_skew_delay = stmt->getInt(7);
57  // *cfeb_timing_corr = stmt->getInt(8);
58 
59  stmt->setInt(1, chamber_index);
60  stmt->registerOutParam(2, oracle::occi::OCCISTRING, 9);
61  stmt->registerOutParam(3, oracle::occi::OCCIFLOAT);
62  stmt->registerOutParam(4, oracle::occi::OCCISTRING, 1);
63  stmt->registerOutParam(5, oracle::occi::OCCIFLOAT);
64  stmt->registerOutParam(6, oracle::occi::OCCISTRING, 1);
65  stmt->registerOutParam(7, oracle::occi::OCCIFLOAT);
66  stmt->registerOutParam(8, oracle::occi::OCCIFLOAT);
67 
68  stmt->execute(); //execute procedure
69 
70  *chamber_label = stmt->getString(2);
71  *cfeb_length = stmt->getFloat(3);
72  *cfeb_rev = stmt->getString(4);
73  *alct_length = stmt->getFloat(5);
74  *alct_rev = stmt->getString(6);
75  *cfeb_tmb_skew_delay = stmt->getFloat(7);
76  *cfeb_timing_corr = stmt->getFloat(8);
77 
78  con->terminateStatement(stmt);
79 } //end of cable_read
csccableread() noexcept(false)
Definition: CSCCableRead.cc:8
~csccableread() noexcept(false)
Definition: CSCCableRead.cc:24
assert(be >=bs)
void cable_read(int chamber_index, std::string *chamber_label, float *cfeb_length, std::string *cfeb_rev, float *alct_length, std::string *alct_rev, float *cfeb_tmb_skew_delay, float *cfeb_timing_corr)
Definition: CSCCableRead.cc:29
oracle::occi::Environment * env
Definition: CSCCableRead.h:10
oracle::occi::Connection * con
Definition: CSCCableRead.h:11