CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes | Private Attributes
popcon::RpcDataUXC Class Reference

#include <RPCUXCSH.h>

Inheritance diagram for popcon::RpcDataUXC:
popcon::PopConSourceHandler< RPCObUXC >

Public Member Functions

void getNewObjects () override
 
std::string id () const override
 
 RpcDataUXC (const edm::ParameterSet &pset)
 
 ~RpcDataUXC () override
 
- Public Member Functions inherited from popcon::PopConSourceHandler< RPCObUXC >
void initialize (const cond::persistency::Session &dbSession, cond::TagInfo_t const &tagInfo, cond::LogDBEntry_t const &logDBEntry)
 
Ref lastPayload () const
 
cond::LogDBEntry_t const & logDBEntry () const
 
std::pair< Container const *, std::string const > operator() (const cond::persistency::Session &session, cond::TagInfo_t const &tagInfo, cond::LogDBEntry_t const &logDBEntry) const
 
 PopConSourceHandler ()
 
Container const & returnData ()
 
cond::TagInfo_t const & tagInfo () const
 
std::string const & userTextLog () const
 
virtual ~PopConSourceHandler ()
 

Public Attributes

unsigned long long niov
 
unsigned long long snc
 
unsigned long long tll
 
unsigned long long utime
 
RPCObUXCUXCdata
 

Private Attributes

std::string host
 
std::string m_name
 
unsigned long long m_since
 
unsigned long long m_till
 
std::string passw
 
std::string user
 

Additional Inherited Members

- Public Types inherited from popcon::PopConSourceHandler< RPCObUXC >
typedef std::map< Time_t, std::shared_ptr< RPCObUXC > > Container
 
typedef std::unique_ptr< RPCObUXCRef
 
typedef PopConSourceHandler< RPCObUXCself
 
typedef cond::Time_t Time_t
 
typedef RPCObUXC value_type
 
- Protected Member Functions inherited from popcon::PopConSourceHandler< RPCObUXC >
cond::persistency::SessiondbSession () const
 
- Protected Attributes inherited from popcon::PopConSourceHandler< RPCObUXC >
Container m_iovs
 
std::vector< std::pair< RPCObUXC *, Time_t > > m_to_transfer
 
std::string m_userTextLog
 

Detailed Description

Definition at line 26 of file RPCUXCSH.h.

Constructor & Destructor Documentation

◆ ~RpcDataUXC()

popcon::RpcDataUXC::~RpcDataUXC ( )
override

Definition at line 22 of file RPCUXCSH.cc.

22 {}

◆ RpcDataUXC()

popcon::RpcDataUXC::RpcDataUXC ( const edm::ParameterSet pset)

Definition at line 14 of file RPCUXCSH.cc.

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)) {}
unsigned long long m_till
Definition: RPCUXCSH.h:46
std::string passw
Definition: RPCUXCSH.h:44
std::string user
Definition: RPCUXCSH.h:43
unsigned long long m_since
Definition: RPCUXCSH.h:45
std::string host
Definition: RPCUXCSH.h:42
std::string m_name
Definition: RPCUXCSH.h:41

Member Function Documentation

◆ getNewObjects()

void popcon::RpcDataUXC::getNewObjects ( )
overridevirtual

Implements popcon::PopConSourceHandler< RPCObUXC >.

Definition at line 24 of file RPCUXCSH.cc.

References gather_cfg::cout, RPCFw::createUXC(), mkfit::dtime(), query::host, L1DTConfigBti_cff::LL, dumpRecoGeometry_cfg::tagInfo, EnviromentSettings::user, and edm::Timestamp::value().

24  {
25  std::cout << "------- " << m_name << " - > getNewObjects\n"
26  << "got offlineInfo" << tagInfo().name << ", size " << tagInfo().size << ", last object valid since "
27  << tagInfo().lastInterval.since << " token " << tagInfo().lastInterval.payloadId << std::endl;
28 
29  std::cout << " ------ last entry info regarding the payload (if existing): " << logDBEntry().usertext
30  << "last record with the correct tag has been written in the db: " << logDBEntry().destinationDB
31  << std::endl;
32 
33  // snc = tagInfo().lastInterval.first;
34 
35  std::cout << std::endl << "=============================================" << std::endl;
36  std::cout << std::endl << "=================== UXC ==================" << std::endl;
37  std::cout << std::endl << "=============================================" << std::endl << std::endl;
38  snc = m_since;
39  std::cout << ">> Range mode [" << snc << ", " << m_till << "]" << std::endl;
40  std::cout << std::endl << "=============================================" << std::endl << std::endl;
41 
42  RPCFw caen(host, user, passw);
43  std::vector<RPCObUXC::Item> UXCcheck;
44  UXCcheck = caen.createUXC(snc, m_till);
45  UXCdata = new RPCObUXC();
46  RPCObUXC::Item UXCfill;
47  std::vector<RPCObUXC::Item>::iterator UXCit;
48  for (UXCit = UXCcheck.begin(); UXCit != UXCcheck.end(); UXCit++) {
49  UXCfill = *(UXCit);
50  UXCdata->ObUXC_rpc.push_back(UXCfill);
51  }
52  std::cout << " >> Final object size: " << UXCdata->ObUXC_rpc.size() << std::endl;
53 
54  if (!UXCdata->ObUXC_rpc.empty()) {
55  niov = snc;
56  } else {
57  niov = snc;
58  std::cout << "NO DATA TO BE STORED" << std::endl;
59  }
60 
61  ::timeval tv;
62  tv.tv_sec = niov;
63  tv.tv_usec = 0;
64  edm::Timestamp tmstamp((unsigned long long)tv.tv_sec * 1000000 + (unsigned long long)tv.tv_usec);
65  std::cout << "UNIX time = " << tmstamp.value() << std::endl;
66 
67  edm::TimeValue_t daqtime = 0LL;
68  daqtime = tv.tv_sec;
69  daqtime = (daqtime << 32) + tv.tv_usec;
70  edm::Timestamp daqstamp(daqtime);
71  edm::TimeValue_t dtime = daqstamp.value();
72  std::cout << "DAQ time = " << dtime << std::endl;
73 
74  niov = dtime;
75 
76  std::cout << "===> New IOV: since is = " << niov << std::endl;
77  m_to_transfer.push_back(std::make_pair((RPCObUXC*)UXCdata, niov));
78 }
unsigned long long m_till
Definition: RPCUXCSH.h:46
unsigned long long snc
Definition: RPCUXCSH.h:35
Iov_t lastInterval
Definition: Types.h:73
Time_t since
Definition: Types.h:53
size_t size
Definition: Types.h:74
Definition: RPCFw.h:29
std::string passw
Definition: RPCUXCSH.h:44
std::string name
Definition: Types.h:72
std::string user
Definition: RPCUXCSH.h:43
cond::TagInfo_t const & tagInfo() const
std::vector< std::pair< RPCObUXC *, Time_t > > m_to_transfer
Hash payloadId
Definition: Types.h:55
unsigned long long TimeValue_t
Definition: Timestamp.h:21
std::string destinationDB
Definition: Types.h:88
unsigned long long m_since
Definition: RPCUXCSH.h:45
unsigned long long niov
Definition: RPCUXCSH.h:37
double dtime()
std::string host
Definition: RPCUXCSH.h:42
std::vector< Item > ObUXC_rpc
Definition: RPCObUXC.h:27
cond::LogDBEntry_t const & logDBEntry() const
std::string m_name
Definition: RPCUXCSH.h:41
RPCObUXC * UXCdata
Definition: RPCUXCSH.h:33
std::string usertext
Definition: Types.h:90

◆ id()

std::string popcon::RpcDataUXC::id ( ) const
inlineoverridevirtual

Implements popcon::PopConSourceHandler< RPCObUXC >.

Definition at line 29 of file RPCUXCSH.h.

References m_name.

29 { return m_name; }
std::string m_name
Definition: RPCUXCSH.h:41

Member Data Documentation

◆ host

std::string popcon::RpcDataUXC::host
private

Definition at line 42 of file RPCUXCSH.h.

◆ m_name

std::string popcon::RpcDataUXC::m_name
private

Definition at line 41 of file RPCUXCSH.h.

Referenced by id().

◆ m_since

unsigned long long popcon::RpcDataUXC::m_since
private

Definition at line 45 of file RPCUXCSH.h.

◆ m_till

unsigned long long popcon::RpcDataUXC::m_till
private

Definition at line 46 of file RPCUXCSH.h.

◆ niov

unsigned long long popcon::RpcDataUXC::niov

Definition at line 37 of file RPCUXCSH.h.

◆ passw

std::string popcon::RpcDataUXC::passw
private

Definition at line 44 of file RPCUXCSH.h.

◆ snc

unsigned long long popcon::RpcDataUXC::snc

Definition at line 35 of file RPCUXCSH.h.

◆ tll

unsigned long long popcon::RpcDataUXC::tll

Definition at line 36 of file RPCUXCSH.h.

◆ user

std::string popcon::RpcDataUXC::user
private

◆ utime

unsigned long long popcon::RpcDataUXC::utime

Definition at line 38 of file RPCUXCSH.h.

◆ UXCdata

RPCObUXC* popcon::RpcDataUXC::UXCdata

Definition at line 33 of file RPCUXCSH.h.