CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 &)
 
const ESWatcheroperator= (const ESWatcher &)
 

Private Attributes

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

Detailed Description

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

Definition at line 33 of file ESWatcher.h.

Constructor & Destructor Documentation

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

Definition at line 42 of file ESWatcher.h.

42 :callback_(NullFunction()), cacheId_(0) {}
boost::function< void(const T &)> callback_
Definition: ESWatcher.h:74
unsigned long long cacheId_
Definition: ESWatcher.h:75
template<class T>
template<class TFunc >
edm::ESWatcher< T >::ESWatcher ( TFunc  iFunctor)
inline

Definition at line 45 of file ESWatcher.h.

45 :callback_(iFunctor),cacheId_(0) {}
boost::function< void(const T &)> callback_
Definition: ESWatcher.h:74
unsigned long long cacheId_
Definition: ESWatcher.h:75
template<class T>
template<class TObj , class TMemFunc >
edm::ESWatcher< T >::ESWatcher ( TObj const &  iObj,
TMemFunc  iFunc 
)
inline

Definition at line 48 of file ESWatcher.h.

48  :
49  callback_(boost::bind(iFunc,iObj,_1)),
50  cacheId_(0)
51  {}
boost::function< void(const T &)> callback_
Definition: ESWatcher.h:74
unsigned long long cacheId_
Definition: ESWatcher.h:75
template<class T>
edm::ESWatcher< T >::ESWatcher ( const ESWatcher< T > &  )
private

Member Function Documentation

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

Definition at line 59 of file ESWatcher.h.

Referenced by TrackingMaterialAnalyser::analyze(), ValidationMisalignedTracker::analyze(), BTagPerformaceRootProducerFromSQLITE::analyze(), DisplayGeom::analyze(), DummyEvelyser::analyze(), ListGroups::analyze(), ListIds::analyze(), RPCMonitorLinkSynchro::beginRun(), RPCUnpackingModule::beginRun(), AlCaRecoTriggerBitsRcdRead::beginRun(), FWFFLooper::beginRun(), SiStripBackplaneCalibration::checkBackPlaneCorrectionInput(), SiStripLorentzAngleCalibration::checkLorentzAngleInput(), SiPixelLorentzAngleCalibration::checkLorentzAngleInput(), FWFFLooper::doBeginLuminosityBlock(), FWFFLooper::doEndLuminosityBlock(), FWFFLooper::duringLoop(), HLTLevel1Pattern::filter(), HLTLevel1Activity::filter(), HLTHighLevel::filter(), CombinedHitPairGenerator::hitPairs(), CombinedHitQuadrupletGeneratorForPhotonConversion::hitPairs(), CombinedHitPairGeneratorForPhotonConversion::hitPairs(), TriggerResultsFilterFromDB::hltFilter(), RunManager::initG4(), PixelUnpackingRegions::initialize(), CSCConditions::initializeEvent(), TriggerHelper::initRun(), GenericTriggerEventFlag::initRun(), CaloTowersCreator::produce(), RPCPackingModule::produce(), SiPixelDigiToRaw::produce(), SiPixelRawToDigi::produce(), EcalRawToDigi::produce(), NuclearInteractionEDProducer::produce(), AlignmentProducer::readInSurveyRcds(), PixelFitterByHelixProjections::run(), BetafuncEvtVtxGenerator::update(), and edm::BMixingModule::update().

59  {
60  const T& record = iSetup.template get<T>();
61  bool result = cacheId_ != record.cacheIdentifier();
62  if(result) {
63  callback_(record);
64  }
65  cacheId_ = record.cacheIdentifier();
66  return result;
67  }
JetCorrectorParameters::Record record
Definition: classes.h:13
boost::function< void(const T &)> callback_
Definition: ESWatcher.h:74
unsigned long long cacheId_
Definition: ESWatcher.h:75
tuple result
Definition: query.py:137
long double T
template<class T>
const ESWatcher& edm::ESWatcher< T >::operator= ( const ESWatcher< T > &  )
private

Member Data Documentation

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

Definition at line 75 of file ESWatcher.h.

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

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

Definition at line 74 of file ESWatcher.h.

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