CMS 3D CMS Logo

RPCUXCSH.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 
12 #include<iostream>
13 
15  m_name(pset.getUntrackedParameter<std::string>("name","RpcData")),
16  host(pset.getUntrackedParameter<std::string>("host", "source db host")),
17  user(pset.getUntrackedParameter<std::string>("user", "source username")),
18  passw(pset.getUntrackedParameter<std::string>("passw", "source password")),
19  m_since(pset.getUntrackedParameter<unsigned long long>("since",5)),
20  m_till(pset.getUntrackedParameter<unsigned long long>("till",0)){
21 }
22 
24 {
25 }
26 
28 
29  std::cout << "------- " << m_name << " - > getNewObjects\n"
30  << "got offlineInfo"<< tagInfo().name
31  << ", size " << tagInfo().size << ", last object valid since "
32  << tagInfo().lastInterval.first << " token "
33  << tagInfo().lastPayloadToken << std::endl;
34 
35  std::cout << " ------ last entry info regarding the payload (if existing): "
36  << logDBEntry().usertext << "last record with the correct tag has been written in the db: "
37  << logDBEntry().destinationDB << std::endl;
38 
39  // snc = tagInfo().lastInterval.first;
40 
41 
42  std::cout << std::endl << "=============================================" << std::endl;
43  std::cout << std::endl << "=================== UXC ==================" << 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 
50 
51  RPCFw caen ( host, user, passw );
52  std::vector<RPCObUXC::Item> UXCcheck;
53  UXCcheck = caen.createUXC(snc, m_till);
54  UXCdata = new RPCObUXC();
55  RPCObUXC::Item UXCfill;
56  std::vector<RPCObUXC::Item>::iterator UXCit;
57  for(UXCit = UXCcheck.begin(); UXCit != UXCcheck.end(); UXCit++)
58  {
59  UXCfill = *(UXCit);
60  UXCdata->ObUXC_rpc.push_back(UXCfill);
61  }
62  std::cout << " >> Final object size: " << UXCdata->ObUXC_rpc.size() << std::endl;
63 
64  if (!UXCdata->ObUXC_rpc.empty()) {
65  niov = snc;
66  } else {
67  niov = snc;
68  std::cout << "NO DATA TO BE STORED" << std::endl;
69  }
70 
71 
72  ::timeval tv;
73  tv.tv_sec = niov;
74  tv.tv_usec = 0;
75  edm::Timestamp tmstamp((unsigned long long)tv.tv_sec*1000000+(unsigned long long)tv.tv_usec);
76  std::cout << "UNIX time = " << tmstamp.value() << std::endl;
77 
78  edm::TimeValue_t daqtime=0LL;
79  daqtime=tv.tv_sec;
80  daqtime=(daqtime<<32)+tv.tv_usec;
81  edm::Timestamp daqstamp(daqtime);
82  edm::TimeValue_t dtime = daqstamp.value();
83  std::cout<<"DAQ time = " << dtime <<std::endl;
84 
85  niov = dtime;
86 
87  std::cout << "===> New IOV: since is = " << niov << std::endl;
88  m_to_transfer.push_back(std::make_pair((RPCObUXC*)UXCdata,niov));
89 }
90 
host
Definition: query.py:115
unsigned long long m_till
Definition: RPCUXCSH.h:46
unsigned long long snc
Definition: RPCUXCSH.h:36
~RpcDataUXC() override
Definition: RPCUXCSH.cc:23
size_t size
Definition: Types.h:77
Definition: RPCFw.h:32
std::string passw
Definition: RPCUXCSH.h:44
std::vector< RPCObUXC::Item > createUXC(long long since, long long till)
Definition: RPCFw.cc:1271
std::string name
Definition: Types.h:73
std::string user
Definition: RPCUXCSH.h:43
cond::ValidityInterval lastInterval
Definition: Types.h:75
cond::LogDBEntry_t const & logDBEntry() const
unsigned long long TimeValue_t
Definition: Timestamp.h:28
std::string destinationDB
Definition: Types.h:93
void getNewObjects() override
Definition: RPCUXCSH.cc:27
unsigned long long m_since
Definition: RPCUXCSH.h:45
unsigned long long niov
Definition: RPCUXCSH.h:38
RpcDataUXC(const edm::ParameterSet &pset)
Definition: RPCUXCSH.cc:14
std::string lastPayloadToken
Definition: Types.h:76
std::string host
Definition: RPCUXCSH.h:42
std::vector< Item > ObUXC_rpc
Definition: RPCObUXC.h:27
std::string m_name
Definition: RPCUXCSH.h:41
RPCObUXC * UXCdata
Definition: RPCUXCSH.h:34
std::string usertext
Definition: Types.h:95
TimeValue_t value() const
Definition: Timestamp.h:56
cond::TagInfo_t const & tagInfo() const