CMS 3D CMS Logo

List of all members | Classes | Public 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)
 
 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

◆ ESWatcher() [1/4]

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

Definition at line 37 of file ESWatcher.h.

37 : callback_(NullFunction()), cacheId_(0) {}
unsigned long long cacheId_
Definition: ESWatcher.h:70
std::function< void(const T &)> callback_
Definition: ESWatcher.h:69

◆ ESWatcher() [2/4]

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

Definition at line 40 of file ESWatcher.h.

40 : callback_(iFunctor), cacheId_(0) {}
unsigned long long cacheId_
Definition: ESWatcher.h:70
std::function< void(const T &)> callback_
Definition: ESWatcher.h:69

◆ ESWatcher() [3/4]

template<class T>
template<class TObj , class TMemFunc >
edm::ESWatcher< T >::ESWatcher ( TObj const &  iObj,
TMemFunc  iFunc 
)
inline

Definition at line 43 of file ESWatcher.h.

44  : callback_(std::bind(iFunc, iObj, std::placeholders::_1)), cacheId_(0) {}
unsigned long long cacheId_
Definition: ESWatcher.h:70
std::function< void(const T &)> callback_
Definition: ESWatcher.h:69

◆ ESWatcher() [4/4]

template<class T>
edm::ESWatcher< T >::ESWatcher ( const ESWatcher< T > &  )
delete

Member Function Documentation

◆ check()

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

Definition at line 57 of file ESWatcher.h.

Referenced by SiStripGainRandomCalculator::algoAnalyze(), SiStripQualityHotStripIdentifier::algoBeginRun(), SiStripQualityHotStripIdentifierRoot::algoBeginRun(), LHCInfoPerLSAnalyzer::analyze(), LHCInfoPerFillAnalyzer::analyze(), Phase2TrackerMonitorDigi::analyze(), SiPixelFakeTemplateDBSourceReader::analyze(), SiPixelFakeGenErrorDBSourceReader::analyze(), PPSGeometryBuilder::analyze(), PPSTimingCalibrationAnalyzer::analyze(), PPSTimingCalibrationLUTAnalyzer::analyze(), SiPixel2DTemplateDBObjectReader::analyze(), SiPixelTemplateDBObjectReader::analyze(), CTPPSAlignmentInfo::analyze(), edmtest::WhatsItWatcherAnalyzer::analyze(), SiStripMonitorQuality::analyze(), CTPPSGeometryInfo::analyze(), CTPPSProtonReconstructionEfficiencyEstimatorData::analyze(), SiPixelFEDChannelContainerFromQualityConverter::analyze(), BeamProfile2DBReader::analyze(), BTagPerformaceRootProducerFromSQLITE::analyze(), SiStripSpyMonitorModule::analyze(), BeamSpotRcdReader::analyze(), BeamSpotOnlineRecordsReader::analyze(), SiStripFEDCheckPlugin::analyze(), PPSStraightTrackAligner::analyze(), DisplayGeom::analyze(), DummyEvelyser::analyze(), SiStripCMMonitorPlugin::analyze(), CommonModeAnalyzer::analyze(), SiStripFEDMonitorPlugin::analyze(), APVShotsAnalyzer::analyze(), PixelBaryCentreAnalyzer::analyze(), SiStripSpyDisplayModule::analyze(), SiPixelGainCalibScaler::analyze(), SiPixelQualityPlotter::analyze(), GlobalTrackerMuonAlignment::analyzeTrackTrack(), GlobalTrackerMuonAlignment::analyzeTrackTrajectory(), RPCCPPFUnpacker::beginRun(), RPCTwinMuxDigiToRaw::beginRun(), StubsSimHitsMatcher::beginRun(), RPCUnpackingModule::beginRun(), TrackingAnalyser::beginRun(), RPCTwinMuxRawToDigi::beginRun(), SiStripDaqInfo::beginRun(), OMTFReconstruction::beginRun(), AlCaRecoTriggerBitsRcdRead::beginRun(), SiStripCorrelateBadStripAndNoise::beginRun(), SiStripCorrelateNoise::beginRun(), SiStripPlotGain::beginRun(), SiStripAnalyser::beginRun(), PFCandidateRecalibrator::beginRun(), FWFFLooper::beginRun(), APVCyclePhaseProducerFromL1TS::beginRun(), SiStripLorentzAngleCalibration::beginRun(), SiPixelLorentzAngleCalibration::beginRun(), Phase2TrackerValidateDigi::bookHistograms(), Phase2ITMonitorCluster::bookHistograms(), Phase2ITValidateRecHitBase::bookHistograms(), Phase2OTMonitorCluster::bookHistograms(), SiStripMonitorQuality::bookHistograms(), SiStripMonitorRawData::bookHistograms(), Phase2OTMonitorVectorHits::bookHistograms(), Phase2ITMonitorRecHit::bookHistograms(), Phase2ITValidateCluster::bookHistograms(), Phase2OTValidateCluster::bookHistograms(), Phase2OTMonitorRecHit::bookHistograms(), SiStripMonitorPedestals::bookHistograms(), SiStripRecHitsValid::bookHistograms(), SiStripTrackingRecHitsValid::bookHistograms(), AngleConverterBase::checkAndUpdateGeometry(), SiStripBackplaneCalibration::checkBackPlaneCorrectionInput(), SiStripBaseCondObjDQMGet< SiStripBackPlaneCorrection, SiStripBackPlaneCorrectionRcd >::checkChanged(), SiStripCorrelateNoise::checkGainCache(), EcalTimeDigiProducer::checkGeometry(), HcalTBDigiProducer::checkGeometry(), CastorDigiProducer::checkGeometry(), HcalDigitizer::checkGeometry(), EcalDigiProducer::checkGeometry(), RPCMonitorLinkSynchro::dqmBeginRun(), Phase2TrackerValidateDigi::dqmBeginRun(), SiPixelLorentzAnglePCLWorker::dqmBeginRun(), FWFFLooper::duringLoop(), SiStripQualityWithFromFedErrorsHelper::endRun(), sistrip::SpyEventMatcherModule::filter(), HLTLevel1Pattern::filter(), TriggerResultsFilterFromDB::filter(), SiStripShotFilter::filter(), SiPixelDigiToRaw::globalBeginLuminosityBlock(), TT6CMNSubtractor::init(), IteratedMedianCMNSubtractor::init(), SiStripPedestalsSubtractor::init(), PFHCALDenseIdNavigator< HcalDetId, HcalTopology, false >::init(), SiStripAPVRestorer::init(), SiStripPopConFEDErrorsHandlerFromDQM::initES(), PixelUnpackingRegions::initialize(), cms::Phase2TrackerDigitizer::initializeEvent(), CaloTruthAccumulator::initializeEvent(), CSCConditions::initializeEvent(), HGCDigitizer::initializeEvent(), TriggerHelper::initRun(), SiStripClusterToDigiProducer::produce(), SiPixelDigiErrorsFromSoA::produce(), CaloTowersCreator::produce(), BeamSpotOnlineProducer::produce(), TotemRPLocalTrackFitter::produce(), TotemRPUVPatternFinder::produce(), CTPPSDiamondRecHitProducer::produce(), TotemTimingRecHitProducer::produce(), CTPPSProtonProducer::produce(), EcalRawToDigi::produce(), HiEvtPlaneFlatProducer::produce(), CTPPSPixelLocalTrackProducer::produce(), SiPixelRawToDigi::produce(), sistrip::FEDEmulatorModule::produce(), CTPPSTotemDigiToRaw::produce(), FastSimProducer::produce(), pat::JetCorrFactorsProducer::produce(), PPSDirectProtonSimulation::produce(), EvtPlaneProducer::produce(), SiStripDcsInfo::readCabling(), AlignmentProducerBase::readInSurveyRcds(), MillePedeDQMModule::setupChanged(), AlignmentProducerBase::setupChanged(), EgammaHLTPixelMatchElectronAlgo::setupES(), ElectronSeedGenerator::setupES(), BetafuncEvtVtxGenerator::update(), edm::BMixingModule::update(), AntiElectronDeadECAL::updateBadTowers(), sistrip::RawToDigiModule::updateCabling(), SeedingLayerSetsBuilder::updateEventSetup(), and PixelInactiveAreaFinder::updatePixelDets().

57  {
58  const T& record = iSetup.template get<T>();
59  bool result = cacheId_ != record.cacheIdentifier();
60  if (result) {
62  }
63  cacheId_ = record.cacheIdentifier();
64  return result;
65  }
unsigned long long cacheId_
Definition: ESWatcher.h:70
std::function< void(const T &)> callback_
Definition: ESWatcher.h:69
long double T

◆ operator=()

template<class T>
const ESWatcher& edm::ESWatcher< T >::operator= ( const ESWatcher< T > &  )
delete

Member Data Documentation

◆ cacheId_

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

Definition at line 70 of file ESWatcher.h.

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

◆ callback_

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

Definition at line 69 of file ESWatcher.h.

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