CMS 3D CMS Logo

Functions | Variables
cond::lhcInfoHelper Namespace Reference

Functions

cond::Time_t getFillLastLumiIOV (const cond::OMSService &oms, unsigned short fillId)
 

Variables

static constexpr unsigned int kLumisectionsQueryLimit = 4000
 

Function Documentation

◆ getFillLastLumiIOV()

cond::Time_t cond::lhcInfoHelper::getFillLastLumiIOV ( const cond::OMSService oms,
unsigned short  fillId 
)

Definition at line 8 of file LHCInfoHelper.cc.

References Exception, kLumisectionsQueryLimit, beamSpotPI::lastLumi, beamSpotPI::lastRun, cond::time::lumiTime(), and cond::OMSService::query().

Referenced by LHCInfoPerLSPopConSourceHandler::getNewObjects(), and LHCInfoPerFillPopConSourceHandler::getNewObjects().

8  {
9  // Define query
10  auto query = oms.query("lumisections");
11  query->addOutputVars({"lumisection_number", "run_number"});
12  query->filterEQ("fill_number", fillId);
14 
15  // Execute query
16  if (!query->execute()) {
17  throw cms::Exception("OMSQueryFailure")
18  << "OMS query of fill " << fillId << " failed, status:" << query->status() << "\n";
19  }
20 
21  // Get query result
22  auto queryResult = query->result();
23  if (queryResult.empty()) {
24  throw cms::Exception("OMSQueryFailure") << "OMS query of fill " << fillId << " returned empty result!\n";
25  }
26 
27  // Return the final IOV
28  auto lastRun = queryResult.back().get<int>("run_number");
29  auto lastLumi = queryResult.back().get<unsigned short>("lumisection_number");
31 }
std::unique_ptr< OMSServiceQuery > query(const std::string &function) const
Definition: OMSAccess.cc:129
Definition: query.py:1
Time_t lumiTime(unsigned int run, unsigned int lumiId)
Definition: Time.cc:66
static constexpr unsigned int kLumisectionsQueryLimit
Definition: LHCInfoHelper.h:12

Variable Documentation

◆ kLumisectionsQueryLimit

constexpr unsigned int cond::lhcInfoHelper::kLumisectionsQueryLimit = 4000
static

Definition at line 12 of file LHCInfoHelper.h.

Referenced by getFillLastLumiIOV().