CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
edm::LuminosityBlockID Class Reference

#include <LuminosityBlockID.h>

Public Member Functions

LuminosityBlockNumber_t luminosityBlock () const
 
 LuminosityBlockID ()
 
 LuminosityBlockID (boost::uint64_t id)
 
 LuminosityBlockID (RunNumber_t iRun, LuminosityBlockNumber_t iLuminosityBlock)
 
LuminosityBlockID next () const
 
LuminosityBlockID nextRun () const
 
LuminosityBlockID nextRunFirstLuminosityBlock () const
 
bool operator!= (LuminosityBlockID const &iRHS) const
 
bool operator< (LuminosityBlockID const &iRHS) const
 
bool operator<= (LuminosityBlockID const &iRHS) const
 
bool operator== (LuminosityBlockID const &iRHS) const
 
bool operator> (LuminosityBlockID const &iRHS) const
 
bool operator>= (LuminosityBlockID const &iRHS) const
 
LuminosityBlockID previous () const
 
LuminosityBlockID previousRunLastLuminosityBlock () const
 
RunNumber_t run () const
 
boost::uint64_t value () const
 

Static Public Member Functions

static LuminosityBlockID firstValidLuminosityBlock ()
 
static LuminosityBlockNumber_t maxLuminosityBlockNumber ()
 

Private Member Functions

template<template< typename > class Op>
bool doOp (LuminosityBlockID const &iRHS) const
 

Private Attributes

LuminosityBlockNumber_t luminosityBlock_
 
RunNumber_t run_
 

Detailed Description

Definition at line 32 of file LuminosityBlockID.h.

Constructor & Destructor Documentation

edm::LuminosityBlockID::LuminosityBlockID ( )
inline
LuminosityBlockID::LuminosityBlockID ( boost::uint64_t  id)
explicit

Definition at line 11 of file LuminosityBlockID.cc.

11  :
12  run_(static_cast<RunNumber_t>(id >> shift)),
13  luminosityBlock_(static_cast<LuminosityBlockNumber_t>(std::numeric_limits<unsigned int>::max() & id))
14  {
15  }
LuminosityBlockNumber_t luminosityBlock_
const T & max(const T &a, const T &b)
static unsigned int const shift
edm::LuminosityBlockID::LuminosityBlockID ( RunNumber_t  iRun,
LuminosityBlockNumber_t  iLuminosityBlock 
)
inline

Definition at line 36 of file LuminosityBlockID.h.

36  :
37  run_(iRun), luminosityBlock_(iLuminosityBlock) {}
LuminosityBlockNumber_t luminosityBlock_

Member Function Documentation

template<template< typename > class Op>
bool edm::LuminosityBlockID::doOp ( LuminosityBlockID const &  iRHS) const
inlineprivate

Definition at line 110 of file LuminosityBlockID.h.

References luminosityBlock_, and run_.

110  {
111  //Run takes presidence for comparisions
112  if(run_ == iRHS.run_) {
113  Op<LuminosityBlockNumber_t> op_e;
114  return op_e(luminosityBlock_, iRHS.luminosityBlock_);
115  }
116  Op<RunNumber_t> op;
117  return op(run_, iRHS.run_) ;
118  }
LuminosityBlockNumber_t luminosityBlock_
static LuminosityBlockID edm::LuminosityBlockID::firstValidLuminosityBlock ( )
inlinestatic

Definition at line 103 of file LuminosityBlockID.h.

References LuminosityBlockID().

Referenced by edm::RootFile::overrideRunNumber().

103  {
104  return LuminosityBlockID(1, 1);
105  }
LuminosityBlockNumber_t edm::LuminosityBlockID::luminosityBlock ( ) const
inline

Definition at line 43 of file LuminosityBlockID.h.

References luminosityBlock_.

Referenced by AlcaBeamMonitor::beginLuminosityBlock(), SiStripMonitorDigi::beginLuminosityBlock(), RawEventOutputModuleForBU< Consumer >::beginLuminosityBlock(), DTEfficiencyTask::beginLuminosityBlock(), DTResolutionAnalysisTask::beginLuminosityBlock(), DQMEventInfo::beginLuminosityBlock(), DTChamberEfficiencyTask::beginLuminosityBlock(), DTDCSByLumiTask::beginLuminosityBlock(), L1TRate::beginLuminosityBlock(), DTDigiForNoiseTask::beginLuminosityBlock(), L1TRate_Offline::beginLuminosityBlock(), L1TEfficiencyEG_Offline::beginLuminosityBlock(), L1TEfficiencyJets_Offline::beginLuminosityBlock(), MulticoreRunLumiEventChecker::beginLuminosityBlock(), DTDigiTask::beginLuminosityBlock(), L1TEfficiency_Harvesting::beginLuminosityBlock(), DTLocalTriggerTask::beginLuminosityBlock(), L1TSync::beginLuminosityBlock(), L1TSync_Harvest::beginLuminosityBlock(), L1TBPTX::beginLuminosityBlock(), L1TEfficiencyMuons_Offline::beginLuminosityBlock(), BOOST_PYTHON_MODULE(), Types.EventID::cppID(), Types.LuminosityBlockID::cppID(), edm::decode(), edm::encode(), edm::LuminosityBlockRange::endLumi(), RPCDcsInfoClient::endLuminosityBlock(), DQMDcsInfoClient::endLuminosityBlock(), AlcaBeamMonitorClient::endLuminosityBlock(), DTDCSByLumiSummary::endLuminosityBlock(), L1Scalers::endLuminosityBlock(), TKStatus::endLuminosityBlock(), BPhysicsOniaDQM::endLuminosityBlock(), SiStripMonitorDigi::endLuminosityBlock(), RawEventOutputModuleForBU< Consumer >::endLuminosityBlock(), LumiCalculator::endLuminosityBlock(), DQMProvInfo::endLuminosityBlock(), HLTEventInfoClient::endLuminosityBlock(), L1TTestsSummary::endLuminosityBlock(), L1ScalersClient::endLuminosityBlock(), BeamMonitorBx::endLuminosityBlock(), QualityTester::endLuminosityBlock(), L1TOccupancyClient::endLuminosityBlock(), BeamSpotProblemMonitor::endLuminosityBlock(), BeamMonitor::endLuminosityBlock(), DTBlockedROChannelsTest::endLuminosityBlock(), DTDataIntegrityTest::endLuminosityBlock(), L1TRate::endLuminosityBlock(), L1TRate_Offline::endLuminosityBlock(), L1TEfficiencyEG_Offline::endLuminosityBlock(), L1TEfficiencyJets_Offline::endLuminosityBlock(), MulticoreRunLumiEventChecker::endLuminosityBlock(), DTSegmentAnalysisTest::endLuminosityBlock(), DTResolutionTest::endLuminosityBlock(), DTDeadChannelTest::endLuminosityBlock(), DTtTrigCalibrationTest::endLuminosityBlock(), DTChamberEfficiencyTest::endLuminosityBlock(), DTEfficiencyTest::endLuminosityBlock(), DTNoiseTest::endLuminosityBlock(), L1TEfficiency_Harvesting::endLuminosityBlock(), HLTScalers::endLuminosityBlock(), FourVectorHLTOnline::endLuminosityBlock(), TrigResRateMon::endLuminosityBlock(), L1TEfficiencyMuons_Offline::endLuminosityBlock(), HLTScalersClient::endLuminosityBlock(), FourVectorHLTOffline::endLuminosityBlock(), MEtoEDMConverter::endLuminosityBlockProduce(), DQMEDAnalyzer::endLuminosityBlockSummary(), HLTPrescaler::filter(), DQMFileSaver::globalEndLuminosityBlock(), cond::EmptyIOVSource::initialize(), cond::limitedIOVSyncValue(), cond::time::limitedIOVSyncValue(), edm::LuminosityBlockAuxiliary::luminosityBlock(), edm::operator<<(), edm::service::Tracer::postGlobalBeginLumi(), edm::service::Tracer::postGlobalEndLumi(), evf::FastMonitoringService::postGlobalEndLumi(), edm::service::Tracer::preGlobalBeginLumi(), evf::FastMonitoringService::preGlobalBeginLumi(), evf::EvFDaqDirector::preGlobalEndLumi(), edm::service::Tracer::preGlobalEndLumi(), evf::FastMonitoringService::preGlobalEndLumi(), dqmservices::DQMProtobufReader::readLuminosityBlock_(), DQMRootSource::readLuminosityBlock_(), edm::RootFile::readLuminosityBlockAuxiliary_(), cond::EmptyIOVSource::setRunAndEventInfo(), edm::LuminosityBlockRange::startLumi(), cond::toIOVSyncValue(), cond::time::toIOVSyncValue(), and edm::RootOutputFile::writeLuminosityBlock().

43 { return luminosityBlock_; }
LuminosityBlockNumber_t luminosityBlock_
static LuminosityBlockNumber_t edm::LuminosityBlockID::maxLuminosityBlockNumber ( )
inlinestatic

Definition at line 99 of file LuminosityBlockID.h.

Referenced by fwlite::IOVSyncValue::endOfTime(), edm::IOVSyncValue::endOfTime(), next(), previous(), and previousRunLastLuminosityBlock().

99  {
100  return 0xFFFFFFFFU;
101  }
LuminosityBlockID edm::LuminosityBlockID::next ( void  ) const
inline

Definition at line 48 of file LuminosityBlockID.h.

References luminosityBlock_, LuminosityBlockID(), maxLuminosityBlockNumber(), and run_.

Referenced by BeautifulSoup.PageElement::_invert().

48  {
51  }
52  return LuminosityBlockID(run_+1, 1);
53  }
LuminosityBlockNumber_t luminosityBlock_
static LuminosityBlockNumber_t maxLuminosityBlockNumber()
LuminosityBlockID edm::LuminosityBlockID::nextRun ( ) const
inline

Definition at line 54 of file LuminosityBlockID.h.

References LuminosityBlockID(), and run_.

54  {
55  return LuminosityBlockID(run_+1, 0);
56  }
LuminosityBlockID edm::LuminosityBlockID::nextRunFirstLuminosityBlock ( ) const
inline

Definition at line 57 of file LuminosityBlockID.h.

References LuminosityBlockID(), and run_.

57  {
58  return LuminosityBlockID(run_+1, 1);
59  }
bool edm::LuminosityBlockID::operator!= ( LuminosityBlockID const &  iRHS) const
inline

Definition at line 80 of file LuminosityBlockID.h.

80  {
81  return ! (*this == iRHS);
82  }
bool edm::LuminosityBlockID::operator< ( LuminosityBlockID const &  iRHS) const
inline

Definition at line 84 of file LuminosityBlockID.h.

84  {
85  return doOp<std::less>(iRHS);
86  }
bool edm::LuminosityBlockID::operator<= ( LuminosityBlockID const &  iRHS) const
inline

Definition at line 87 of file LuminosityBlockID.h.

87  {
88  return doOp<std::less_equal>(iRHS);
89  }
bool edm::LuminosityBlockID::operator== ( LuminosityBlockID const &  iRHS) const
inline

Definition at line 77 of file LuminosityBlockID.h.

References luminosityBlock_, and run_.

77  {
78  return iRHS.run_ == run_ && iRHS.luminosityBlock_ == luminosityBlock_;
79  }
LuminosityBlockNumber_t luminosityBlock_
bool edm::LuminosityBlockID::operator> ( LuminosityBlockID const &  iRHS) const
inline

Definition at line 90 of file LuminosityBlockID.h.

90  {
91  return doOp<std::greater>(iRHS);
92  }
bool edm::LuminosityBlockID::operator>= ( LuminosityBlockID const &  iRHS) const
inline

Definition at line 93 of file LuminosityBlockID.h.

93  {
94  return doOp<std::greater_equal>(iRHS);
95  }
LuminosityBlockID edm::LuminosityBlockID::previous ( ) const
inline

Definition at line 67 of file LuminosityBlockID.h.

References luminosityBlock_, LuminosityBlockID(), maxLuminosityBlockNumber(), and run_.

Referenced by BeautifulSoup.PageElement::_invert().

67  {
68  if(luminosityBlock_ > 1) {
70  }
71  if(run_ != 0) {
73  }
74  return LuminosityBlockID(0,0);
75  }
LuminosityBlockNumber_t luminosityBlock_
static LuminosityBlockNumber_t maxLuminosityBlockNumber()
LuminosityBlockID edm::LuminosityBlockID::previousRunLastLuminosityBlock ( ) const
inline

Definition at line 60 of file LuminosityBlockID.h.

References LuminosityBlockID(), maxLuminosityBlockNumber(), and run_.

60  {
61  if(run_ > 1) {
63  }
64  return LuminosityBlockID(0,0);
65  }
static LuminosityBlockNumber_t maxLuminosityBlockNumber()
RunNumber_t edm::LuminosityBlockID::run ( ) const
inline

Definition at line 42 of file LuminosityBlockID.h.

References run_.

Referenced by MulticoreRunLumiEventChecker::beginLuminosityBlock(), BOOST_PYTHON_MODULE(), Types.EventID::cppID(), Types.LuminosityBlockID::cppID(), edm::decode(), edm::encode(), MulticoreRunLumiEventChecker::endLuminosityBlock(), edm::LuminosityBlockRange::endRun(), DQMFileSaver::globalEndLuminosityBlock(), cond::EmptyIOVSource::initialize(), cond::limitedIOVSyncValue(), cond::time::limitedIOVSyncValue(), edm::operator<<(), edm::service::Tracer::postGlobalBeginLumi(), edm::service::Tracer::postGlobalBeginRun(), edm::service::Tracer::postGlobalEndLumi(), edm::service::Tracer::postGlobalEndRun(), FastTimerService::postGlobalEndRun(), edm::service::Tracer::preGlobalBeginLumi(), edm::service::MessageLogger::preGlobalBeginLumi(), edm::service::Tracer::preGlobalBeginRun(), edm::service::MessageLogger::preGlobalBeginRun(), cond::service::PoolDBOutputService::preGlobalBeginRun(), edm::service::Tracer::preGlobalEndLumi(), edm::service::MessageLogger::preGlobalEndLumi(), edm::service::Tracer::preGlobalEndRun(), edm::service::MessageLogger::preGlobalEndRun(), dqmservices::DQMProtobufReader::readLuminosityBlock_(), DQMRootSource::readLuminosityBlock_(), edm::RootFile::readLuminosityBlockAuxiliary_(), edm::LuminosityBlockAuxiliary::run(), cond::EmptyIOVSource::setRunAndEventInfo(), edm::LuminosityBlockRange::startRun(), cond::toIOVSyncValue(), cond::time::toIOVSyncValue(), edm::RootOutputFile::writeLuminosityBlock(), and DQMRootOutputModule::writeLuminosityBlock().

42 { return run_; }
boost::uint64_t LuminosityBlockID::value ( ) const

Definition at line 18 of file LuminosityBlockID.cc.

References luminosityBlock_, run_, and edm::shift.

Referenced by Types.int32::__nonzero__(), Types.uint32::__nonzero__(), Types.int64::__nonzero__(), Types.uint64::__nonzero__(), Types.double::__nonzero__(), Types.bool::__nonzero__(), Types.string::__nonzero__(), Vispa.Views.PropertyView.FileProperty::buttonClicked(), Types.string::configValue(), Types.FileInPath::configValue(), Mixins.UsingBlock::dumpPython(), cond::fromIOVSyncValue(), cond::time::fromIOVSyncValue(), Types.int32::insertInto(), Types.uint32::insertInto(), Types.int64::insertInto(), Types.uint64::insertInto(), Mixins.UsingBlock::insertInto(), Types.double::insertInto(), Types.bool::insertInto(), Types.string::insertInto(), Types.FileInPath::insertInto(), Types.vint32::insertInto(), Types.vuint32::insertInto(), Types.vint64::insertInto(), Types.vuint64::insertInto(), Types.vdouble::insertInto(), Types.vbool::insertInto(), Types.vstring::insertInto(), Vispa.Views.PropertyView.FileProperty::labelDoubleClicked(), cond::service::PoolDBOutputService::preGlobalBeginLumi(), and DQMRootOutputModule::writeLuminosityBlock().

18  {
19  boost::uint64_t id = run_;
20  id = id << shift;
21  id += luminosityBlock_;
22  return id;
23  }
LuminosityBlockNumber_t luminosityBlock_
unsigned long long uint64_t
Definition: Time.h:15
static unsigned int const shift

Member Data Documentation

LuminosityBlockNumber_t edm::LuminosityBlockID::luminosityBlock_
private

Definition at line 125 of file LuminosityBlockID.h.

Referenced by doOp(), luminosityBlock(), next(), operator==(), previous(), and value().

RunNumber_t edm::LuminosityBlockID::run_
private