CMS 3D CMS Logo

Classes | Public Member Functions | Private Member Functions | Private Attributes

edm::ESWatcher< T > Class Template Reference

#include <ESWatcher.h>

List of all members.

Classes

struct  NullFunction

Public Member Functions

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

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.

:callback_(NullFunction()), cacheId_(0) {}
template<class T>
template<class TFunc >
edm::ESWatcher< T >::ESWatcher ( TFunc  iFunctor) [inline]

Definition at line 45 of file ESWatcher.h.

:callback_(iFunctor),cacheId_(0) {}
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.

                                               :
    callback_(boost::bind(iFunc,iObj,_1)),
    cacheId_(0)
     {}
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 ValidationMisalignedTracker::analyze(), DummyEvelyser::analyze(), DisplayGeom::analyze(), BTagPerformaceRootProducerFromSQLITE::analyze(), FWFFLooper::beginRun(), AlCaRecoTriggerBitsRcdRead::beginRun(), RPCMonitorLinkSynchro::beginRun(), RPCUnpackingModule::beginRun(), SiStripBackplaneCalibration::checkBackPlaneCorrectionInput(), SiPixelLorentzAngleCalibration::checkLorentzAngleInput(), SiStripLorentzAngleCalibration::checkLorentzAngleInput(), FWFFLooper::doBeginLuminosityBlock(), FWFFLooper::doEndLuminosityBlock(), FWFFLooper::duringLoop(), HLTLevel1Activity::filter(), HLTHighLevel::filter(), HLTLevel1Pattern::filter(), CombinedHitQuadrupletGeneratorForPhotonConversion::hitPairs(), CombinedHitPairGeneratorForPhotonConversion::hitPairs(), CombinedHitPairGenerator::hitPairs(), TriggerResultsFilterFromDB::hltFilter(), RunManager::initG4(), PixelUnpackingRegions::initialize(), CSCConditions::initializeEvent(), TriggerHelper::initRun(), GenericTriggerEventFlag::initRun(), NuclearInteractionEDProducer::produce(), RPCPackingModule::produce(), SiPixelDigiToRaw::produce(), CaloTowersCreator::produce(), EcalRawToDigi::produce(), SiPixelRawToDigi::produce(), AlignmentProducer::readInSurveyRcds(), PixelFitterByHelixProjections::run(), BetafuncEvtVtxGenerator::update(), and edm::BMixingModule::update().

                                              {
        const T& record = iSetup.template get<T>();
        bool result = cacheId_ != record.cacheIdentifier();
        if(result) {
          callback_(record);
        }
        cacheId_ = record.cacheIdentifier();
        return result;
      }
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().