CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Private Member Functions | Private Attributes
edm::ESWatcher< T > Class Template Reference

#include <ESWatcher.h>

Classes

struct  NullFunction
 

Public Member Functions

bool check (const edm::EventSetup &iSetup)
 
 ESWatcher ()
 
template<class TFunc >
 ESWatcher (TFunc iFunctor)
 
template<class TObj , class TMemFunc >
 ESWatcher (TObj const &iObj, TMemFunc iFunc)
 

Private Member Functions

 ESWatcher (const ESWatcher &)=delete
 
const ESWatcheroperator= (const ESWatcher &)=delete
 

Private Attributes

unsigned long long cacheId_
 
std::function< void(const T &)> callback_
 

Detailed Description

template<class T>
class edm::ESWatcher< T >

Definition at line 31 of file ESWatcher.h.

Constructor & Destructor Documentation

template<class T>
edm::ESWatcher< T >::ESWatcher ( )
inline

Definition at line 40 of file ESWatcher.h.

Referenced by edm::ESWatcher< TrackerTopologyRcd >::check().

40 :callback_(NullFunction()), cacheId_(0) {}
unsigned long long cacheId_
Definition: ESWatcher.h:73
std::function< void(const T &)> callback_
Definition: ESWatcher.h:72
template<class T>
template<class TFunc >
edm::ESWatcher< T >::ESWatcher ( TFunc  iFunctor)
inline

Definition at line 43 of file ESWatcher.h.

43 :callback_(iFunctor),cacheId_(0) {}
unsigned long long cacheId_
Definition: ESWatcher.h:73
std::function< void(const T &)> callback_
Definition: ESWatcher.h:72
template<class T>
template<class TObj , class TMemFunc >
edm::ESWatcher< T >::ESWatcher ( TObj const &  iObj,
TMemFunc  iFunc 
)
inline

Definition at line 46 of file ESWatcher.h.

46  :
47  callback_(std::bind(iFunc,iObj,std::placeholders::_1)),
48  cacheId_(0)
49  {}
unsigned long long cacheId_
Definition: ESWatcher.h:73
std::function< void(const T &)> callback_
Definition: ESWatcher.h:72
template<class T>
edm::ESWatcher< T >::ESWatcher ( const ESWatcher< T > &  )
privatedelete

Member Function Documentation

template<class T>
bool edm::ESWatcher< T >::check ( const edm::EventSetup iSetup)
inline

Definition at line 57 of file ESWatcher.h.

Referenced by CTPPSAlignmentInfo::analyze(), CTPPSGeometryInfo::analyze(), BeamSpotRcdReader::analyze(), BTagPerformaceRootProducerFromSQLITE::analyze(), DisplayGeom::analyze(), DummyEvelyser::analyze(), GlobalTrackerMuonAlignment::analyzeTrackTrack(), GlobalTrackerMuonAlignment::analyzeTrackTrajectory(), cms::Phase2TrackerDigitizer::beginLuminosityBlock(), RPCCPPFUnpacker::beginRun(), RPCTwinMuxDigiToRaw::beginRun(), RPCUnpackingModule::beginRun(), RPCTwinMuxRawToDigi::beginRun(), AlCaRecoTriggerBitsRcdRead::beginRun(), APVCyclePhaseProducerFromL1TS::beginRun(), SiStripLorentzAngleCalibration::beginRun(), SiPixelLorentzAngleCalibration::beginRun(), SiStripBackplaneCalibration::checkBackPlaneCorrectionInput(), HcalDigitizer::checkGeometry(), RPCMonitorLinkSynchro::dqmBeginRun(), HLTLevel1Pattern::filter(), TriggerResultsFilterFromDB::filter(), HLTHighLevel::filter(), LargeEvents< T >::filter(), CosmicLayerTriplets::init(), RunManager::initG4(), PixelUnpackingRegions::initialize(), CSCConditions::initializeEvent(), TriggerHelper::initRun(), JetTagProducer::produce(), CaloTowersCreator::produce(), SiPixelDigiToRaw::produce(), SiPixelRawToDigi::produce(), TotemRPLocalTrackFitter::produce(), TotemRPUVPatternFinder::produce(), CTPPSPixelLocalTrackProducer::produce(), EcalRawToDigi::produce(), NuclearInteractionEDProducer::produce(), HiEvtPlaneFlatProducer::produce(), FastSimProducer::produce(), EvtPlaneProducer::produce(), OscarMTMasterThread::readES(), AlignmentProducerBase::readInSurveyRcds(), MuonCkfTrajectoryBuilder::setEvent_(), AlignmentProducerBase::setupChanged(), BetafuncEvtVtxGenerator::update(), SeedingLayerSetsBuilder::updateEventSetup(), and PixelInactiveAreaFinder::updatePixelDets().

57  {
58  const T& record = iSetup.template get<T>();
59  bool result = cacheId_ != record.cacheIdentifier();
60  if(result) {
61  callback_(record);
62  }
63  cacheId_ = record.cacheIdentifier();
64  return result;
65  }
JetCorrectorParameters::Record record
Definition: classes.h:7
unsigned long long cacheId_
Definition: ESWatcher.h:73
std::function< void(const T &)> callback_
Definition: ESWatcher.h:72
long double T
template<class T>
const ESWatcher& edm::ESWatcher< T >::operator= ( const ESWatcher< T > &  )
privatedelete

Member Data Documentation

template<class T>
unsigned long long edm::ESWatcher< T >::cacheId_
private

Definition at line 73 of file ESWatcher.h.

Referenced by edm::ESWatcher< TrackerTopologyRcd >::check().

template<class T>
std::function<void (const T&)> edm::ESWatcher< T >::callback_
private

Definition at line 72 of file ESWatcher.h.

Referenced by edm::ESWatcher< TrackerTopologyRcd >::check().