CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
RPCGasSH.cc
Go to the documentation of this file.
1 /*
2  * See headers for a description
3  *
4  * \author D. Pagano - Dip. Fis. Nucl. e Teo. & INFN Pavia
5  */
6 
11 #include <sys/time.h>
13 #include<iostream>
14 
16  m_name(pset.getUntrackedParameter<std::string>("name","RpcData")),
17  host(pset.getUntrackedParameter<std::string>("host", "source db host")),
18  user(pset.getUntrackedParameter<std::string>("user", "source username")),
19  passw(pset.getUntrackedParameter<std::string>("passw", "source password")),
20  m_since(pset.getUntrackedParameter<unsigned long long>("since",5)),
21  m_till(pset.getUntrackedParameter<unsigned long long>("till",0)){
22 }
23 
25 {
26 }
27 
29 
30  std::cout << "------- " << m_name << " - > getNewObjects\n"
31  << "got offlineInfo "<< tagInfo().name
32  << ", size " << tagInfo().size << ", last object valid since "
33  << tagInfo().lastInterval.first << " token "
34  << tagInfo().lastPayloadToken << std::endl;
35 
36  std::cout << " ------ last entry info regarding the payload (if existing): "
37  << logDBEntry().usertext << "last record with the correct tag has been written in the db: "
38  << logDBEntry().destinationDB << std::endl;
39 
40  // snc = tagInfo().lastInterval.first;
41 
42  std::cout << std::endl << "=============================================" << std::endl;
43  std::cout << std::endl << "=================== GAS ==================" << std::endl;
44  std::cout << std::endl << "=============================================" << std::endl << std::endl;
45  snc = m_since;
46  std::cout << ">> Range mode [" << snc << ", " << m_till << "]" << std::endl;
47  std::cout << std::endl << "=============================================" << std::endl << std::endl;
48 
49  RPCFw caen ( host, user, passw );
50  std::vector<RPCObGas::Item> Gascheck;
51 
52  Gascheck = caen.createGAS(snc, m_till);
53  Gasdata = new RPCObGas();
54  RPCObGas::Item Ifill;
55  std::vector<RPCObGas::Item>::iterator Iit;
56  for(Iit = Gascheck.begin(); Iit != Gascheck.end(); Iit++)
57  {
58  Ifill = *(Iit);
59  Gasdata->ObGas_rpc.push_back(Ifill);
60  }
61  std::cout << " >> Final object size: " << Gasdata->ObGas_rpc.size() << std::endl;
62 
63 
64  if (Gasdata->ObGas_rpc.size() > 0) {
65  niov = snc;
66  } else {
67  niov = snc;
68  std::cout << "NO DATA TO BE STORED" << std::endl;
69  }
70 
71  ::timeval tv;
72  tv.tv_sec = niov;
73  tv.tv_usec = 0;
74  edm::Timestamp tmstamp((unsigned long long)tv.tv_sec*1000000+(unsigned long long)tv.tv_usec);
75  std::cout << "UNIX time = " << tmstamp.value() << std::endl;
76 
77  edm::TimeValue_t daqtime=0LL;
78  daqtime=tv.tv_sec;
79  daqtime=(daqtime<<32)+tv.tv_usec;
80  edm::Timestamp daqstamp(daqtime);
81  edm::TimeValue_t dtime = daqstamp.value();
82  std::cout<<"DAQ time = " << dtime <<std::endl;
83 
84  niov = dtime;
85 
86  std::cout << "===> New IOV: since is = " << niov << std::endl;
87  m_to_transfer.push_back(std::make_pair((RPCObGas*)Gasdata,niov));
88 }
RpcObGasData(const edm::ParameterSet &pset)
Definition: RPCGasSH.cc:15
Definition: RPCFw.h:32
std::vector< RPCObGas::Item > createGAS(long long since, long long till)
Definition: RPCFw.cc:297
unsigned long long TimeValue_t
Definition: Timestamp.h:28
string host
Definition: query.py:114
tuple cout
Definition: gather_cfg.py:121
TimeValue_t value() const
Definition: Timestamp.h:56