#include <OnDemandMeasurementTracker.h>
Classes | |
class | DetODStatus |
a class that holds flags, region_range (in RefGetter) for a given MeasurementDet More... | |
Public Types | |
typedef edm::LazyGetter < SiStripCluster > | LazyGetter |
typedef edm::RefGetter < SiStripCluster > | RefGetter |
Public Member Functions | |
void | define (const edm::Handle< edm::LazyGetter< SiStripCluster > > &, std::auto_ptr< RefGetter > &) const |
OnDemandMeasurementTracker specific function to be called to define the region in the RefGetter according to MeasurementDet content. | |
virtual const MeasurementDet * | idToDet (const DetId &id) const |
MeasurementDetSystem interface. | |
OnDemandMeasurementTracker (const edm::ParameterSet &conf, const PixelClusterParameterEstimator *pixelCPE, const StripClusterParameterEstimator *stripCPE, const SiStripRecHitMatcher *hitMatcher, const TrackerGeometry *trackerGeom, const GeometricSearchTracker *geometricSearchTracker, const SiStripQuality *stripQuality, int stripQualityFlags, int stripQualityDebugFlags, const SiPixelQuality *pixelQuality, const SiPixelFedCabling *pixelCabling, int pixelQualityFlags, int pixelQualityDebugFlags, const SiStripRegionCabling *stripRegionCabling, bool isRegional=false) | |
constructor | |
void | update (const edm::Event &) const |
MeasurementTracker overloaded function. | |
void | updateStrips (const edm::Event &event) const |
virtual | ~OnDemandMeasurementTracker () |
destructor | |
Private Types | |
typedef std::unordered_map < unsigned int, DetODStatus > | DetODContainer |
typedef std::vector< std::pair < SiStripRegionCabling::ElementIndex, std::vector < DetODContainer::const_iterator > > > | RegionalMap |
mapping of elementIndex -> iterator to the DetODMap: to know what are the regions that needs to be defined in the ref getter | |
Private Member Functions | |
void | assign (const TkStripMeasurementDet *csmdet, DetODContainer::iterator *alreadyFound=0) const |
assigne the cluster iterator to the TkStipMeasurementDet (const_cast in the way) | |
std::string | dumpCluster (const std::vector< SiStripCluster >::const_iterator &begin, const std::vector< SiStripCluster >::const_iterator &end) const |
some printouts, exclusively under LogDebug | |
std::string | dumpRegion (std::pair< unsigned int, unsigned int > indexes, const RefGetter &theGetter, bool stayUnpacked=false) const |
Private Attributes | |
std::string | category_ |
log category | |
bool | PixelOnDemand_ |
internal flag to do pixel on demand (not configurable) false by default | |
RegionalMap | region_mapping |
bool | StayPacked_ |
internal flag to avoid unpacking things with LogDebug on | |
bool | StripOnDemand_ |
internal flag to do strip on demand (not configurable) true by default | |
DetODContainer | theDetODMap |
mapping of detid -> MeasurementDet+flags+region_range | |
edm::Handle< edm::LazyGetter < SiStripCluster > > | theLazyGetterH |
std::vector< uint32_t > | theRawInactiveStripDetIds |
edm::Handle< edm::RefGetter < SiStripCluster > > | theRefGetterH |
the handle is retrieved from the event to make reference to cluster in it | |
bool | theSkipClusterRefs |
edm::Handle < edm::ContainerMask < edm::LazyGetter < SiStripCluster > > > | theStripClusterMask |
const SiStripRegionCabling * | theStripRegionCabling |
the cabling region tool to update a RefGetter |
Definition at line 13 of file OnDemandMeasurementTracker.h.
typedef std::unordered_map<unsigned int, DetODStatus> OnDemandMeasurementTracker::DetODContainer [private] |
Definition at line 79 of file OnDemandMeasurementTracker.h.
Definition at line 38 of file OnDemandMeasurementTracker.h.
Definition at line 39 of file OnDemandMeasurementTracker.h.
typedef std::vector<std::pair<SiStripRegionCabling::ElementIndex, std::vector<DetODContainer::const_iterator> > > OnDemandMeasurementTracker::RegionalMap [private] |
mapping of elementIndex -> iterator to the DetODMap: to know what are the regions that needs to be defined in the ref getter
Definition at line 84 of file OnDemandMeasurementTracker.h.
OnDemandMeasurementTracker::OnDemandMeasurementTracker | ( | const edm::ParameterSet & | conf, |
const PixelClusterParameterEstimator * | pixelCPE, | ||
const StripClusterParameterEstimator * | stripCPE, | ||
const SiStripRecHitMatcher * | hitMatcher, | ||
const TrackerGeometry * | trackerGeom, | ||
const GeometricSearchTracker * | geometricSearchTracker, | ||
const SiStripQuality * | stripQuality, | ||
int | stripQualityFlags, | ||
int | stripQualityDebugFlags, | ||
const SiPixelQuality * | pixelQuality, | ||
const SiPixelFedCabling * | pixelCabling, | ||
int | pixelQualityFlags, | ||
int | pixelQualityDebugFlags, | ||
const SiStripRegionCabling * | stripRegionCabling, | ||
bool | isRegional = false |
||
) |
constructor
Definition at line 54 of file OnDemandMeasurementTracker.cc.
References category_, SiStripRegionCabling::elementIndex(), eta(), PV3DBase< T, PVType, FrameType >::eta(), first, SiStripRegionCabling::layerFromDetId(), LogDebug, PV3DBase< T, PVType, FrameType >::phi(), phi, GeomDetEnumerators::PixelBarrel, GeomDetEnumerators::PixelEndcap, SiStripRegionCabling::position(), SiStripRegionCabling::positionIndex(), SiStripRegionCabling::region(), region_mapping, edm::second(), SiStripRegionCabling::subdetFromDetId(), GeomDetEnumerators::TEC, MeasurementTrackerImpl::theDetMap, theDetODMap, MeasurementTrackerImpl::theInactiveStripDetectorLabels, theRawInactiveStripDetIds, theStripRegionCabling, GeomDetEnumerators::TIB, GeomDetEnumerators::TID, and GeomDetEnumerators::TOB.
: MeasurementTrackerImpl(conf,pixelCPE,stripCPE,hitMatcher,trackerGeom,geometricSearchTracker, stripQuality,stripQualityFlags,stripQualityDebugFlags, pixelQuality,pixelCabling,pixelQualityFlags,pixelQualityDebugFlags, isRegional) , category_("OnDemandMeasurementTracker") , StayPacked_(true) , StripOnDemand_(true) , PixelOnDemand_(false) , theStripRegionCabling(stripRegionCabling) { // the constructor does construct the regular MeasurementTracker // then a smart copy of the DetMap is made into DetODMap: this could be avoided with modification to MeasurementDet interface // the elementIndex to be defined in the refgetter is mapped to the detId // flags are set to initialize the DetODMap std::map<SiStripRegionCabling::ElementIndex, std::vector< DetODContainer::const_iterator> > local_mapping; for (DetContainer::iterator it=theDetMap.begin(); it!= theDetMap.end();++it) { DetODContainer::iterator inserted = theDetODMap.insert(make_pair(it->first,DetODStatus(const_cast<MeasurementDet*>(it->second)))).first; GeomDet::SubDetector subdet = it->second->geomDet().subDetector(); if (subdet == GeomDetEnumerators::PixelBarrel || subdet == GeomDetEnumerators::PixelEndcap ){ //special flag treatement for pixels //one can never be updated and not defined. except if we don't need to care about them: pixels inserted->second.defined=false; inserted->second.updated=true; }//pixel module else if (subdet == GeomDetEnumerators::TIB || subdet == GeomDetEnumerators::TOB || subdet == GeomDetEnumerators::TID || subdet == GeomDetEnumerators::TEC ) { //set flag to false inserted->second.defined=false; inserted->second.updated=false; //what will be the element index in the refgetter GlobalPoint center = it->second->geomDet().position(); double eta = center.eta(); double phi = center.phi(); uint32_t id = it->first; SiStripRegionCabling::ElementIndex eIndex = theStripRegionCabling->elementIndex(SiStripRegionCabling::Position(eta,phi), SiStripRegionCabling::subdetFromDetId(id), SiStripRegionCabling::layerFromDetId(id)); LogDebug(category_)<<"region selected (from "<<id<<" center) is:\n" <<"position: "<<center <<"\n center absolute index: "<<theStripRegionCabling->region(theStripRegionCabling->positionIndex(SiStripRegionCabling::Position(eta,phi))) <<"\n center position index: "<<theStripRegionCabling->positionIndex(SiStripRegionCabling::Position(eta,phi)).first<< " "<<theStripRegionCabling->positionIndex(SiStripRegionCabling::Position(eta,phi)).second <<"\n center postion: "<<theStripRegionCabling->position(theStripRegionCabling->positionIndex(SiStripRegionCabling::Position(eta,phi))).first<< " "<<theStripRegionCabling->position(theStripRegionCabling->positionIndex(SiStripRegionCabling::Position(eta,phi))).second <<"\n eta: "<<eta <<"\n phi: "<<phi <<"\n subedet: "<<SiStripRegionCabling::subdetFromDetId(id) <<" layer: "<<SiStripRegionCabling::layerFromDetId(id); // register those in a map //to be able to know what are the detid in a given elementIndex local_mapping[eIndex].push_back(inserted); }//strip module else{ //abort edm::LogError(category_)<<"not a tracker geomdet in constructor: "<<it->first; throw MeasurementDetException("OnDemandMeasurementTracker dealing with a non tracker GeomDet."); }//abort }//loop over DetMap if (theInactiveStripDetectorLabels.size()!=0) theRawInactiveStripDetIds.reserve(200); //move into a vector region_mapping.reserve(local_mapping.size()); for( auto eIt= local_mapping.begin(); eIt!=local_mapping.end();++eIt) region_mapping.push_back(std::make_pair((*eIt).first,(*eIt).second)); }
virtual OnDemandMeasurementTracker::~OnDemandMeasurementTracker | ( | ) | [inline, virtual] |
void OnDemandMeasurementTracker::assign | ( | const TkStripMeasurementDet * | csmdet, |
DetODContainer::iterator * | alreadyFound = 0 |
||
) | const [private] |
assigne the cluster iterator to the TkStipMeasurementDet (const_cast in the way)
Definition at line 293 of file OnDemandMeasurementTracker.cc.
References category_, dumpCluster(), dumpRegion(), LogDebug, DetId::rawId(), theDetODMap, theRawInactiveStripDetIds, and theRefGetterH.
Referenced by idToDet().
{ // assign is using the handle to the refgetter and the region index range to update the MeasurementDet with their clusters TkStripMeasurementDet * smdet = const_cast<TkStripMeasurementDet *>(csmdet); DetId id = smdet->rawId(); LogDebug(category_)<<"assigning: "<<id.rawId(); // what is the iterator. do not look again if already found and provided with DetODContainer::iterator elementInMap; if (alreadyFound){ elementInMap=*alreadyFound;} else{ elementInMap = theDetODMap.find(id);} if ( elementInMap != theDetODMap.end()){ //flag it as updated elementInMap->second.updated = true; if (!theRawInactiveStripDetIds.empty() && std::binary_search(theRawInactiveStripDetIds.begin(), theRawInactiveStripDetIds.end(), id)) { smdet->setActiveThisEvent(false); return; } //retrieve the region range index for this module std::pair<unsigned int,unsigned int> & indexes =elementInMap->second.region_range; //this printout will trigger unpacking. no problem. it is done on the next regular line (find(id.rawId()) LogDebug(category_)<<"between index: "<<indexes.first<<" and: "<<indexes.second <<"\nretrieved for module: "<<id.rawId() <<"\n"<<dumpRegion(indexes,*theRefGetterH); //look for iterator range in the regions defined for that module for (unsigned int iRegion = indexes.first; iRegion != indexes.second; ++iRegion){ RefGetter::record_pair range = (*theRefGetterH)[iRegion].find(id.rawId()); if (range.first!=range.second){ // found something not empty //update the measurementDet smdet->update(range.first, range.second); LogDebug(category_)<<"Valid clusters for: "<<id.rawId() <<"\nnumber of regions defined here: "<< indexes.second-indexes.first <<"\n"<<dumpCluster(range.first,range.second); /* since theStripsToSkip is a "static" pointer of the MT, no need to set it at all time. if (selfUpdateSkipClusters_){ //assign skip clusters smdet->setClusterToSkip(&theStripsToSkip); } */ //and you are done return;} }//loop over regions, between indexes //if reached. no cluster are found. set the TkStripMeasurementDet to be empty smdet->setEmpty(); }//found in the map else{ //throw excpetion edm::LogError(category_)<<"failed to find the MeasurementDet for: "<<id.rawId(); throw MeasurementDetException("failed to find the MeasurementDet for: <see message logger>"); } }
void OnDemandMeasurementTracker::define | ( | const edm::Handle< edm::LazyGetter< SiStripCluster > > & | , |
std::auto_ptr< RefGetter > & | |||
) | const |
OnDemandMeasurementTracker specific function to be called to define the region in the RefGetter according to MeasurementDet content.
Definition at line 146 of file OnDemandMeasurementTracker.cc.
References category_, OnDemandMeasurementTracker::DetODStatus::defined, dumpRegion(), HTMLExport::elem(), LogDebug, region_mapping, OnDemandMeasurementTracker::DetODStatus::region_range, StMeasurementDetSet::setLazyGetter(), StayPacked_, theDetODMap, MeasurementTrackerImpl::theStDets, theStripRegionCabling, and SiStripRegionCabling::updateSiStripRefGetter().
Referenced by MeasurementTrackerSiStripRefGetterProducer::produce().
{ // define is supposed to be call by an EDProducer module, which wil put the RefGetter in the event // so that reference can be made to it. // the lazy getter is retrieved by the calling module and passed along with the event // the map is cleared, except for pixel // then the known elementIndex are defined to the RefGetter. no unpacking is done at this time // the defined region range is registered in the DetODMap for further use. //clear all defined tags to start from scratch (except for pixel) for (DetODContainer::iterator it=theDetODMap.begin(); it!= theDetODMap.end();++it) { if (it->second.updated && !it->second.defined) continue; //special treatement for pixels it->second.defined= false; it->second.updated = false; } // nedeed?? theStDets.setLazyGetter(aLazyGetterH); //define all the elementindex in the refgetter for(auto eIt= region_mapping.begin(); eIt!=region_mapping.end();++eIt){ std::pair<unsigned int, unsigned int> region_range; //before update of the refgetter region_range.first = aGetter->size(); //update the refegetter with the elementindex theStripRegionCabling->updateSiStripRefGetter<SiStripCluster> (*aGetter, aLazyGetterH, eIt->first); //after update of the refgetter region_range.second = aGetter->size(); LogDebug(category_)<<"between index: "<<region_range.first<<" "<<region_range.second <<"\n"<<dumpRegion(region_range,*aGetter,StayPacked_); //now assign to each measurement det for that element index for (auto dIt=eIt->second.begin(); dIt!=eIt->second.end();++dIt){ DetODStatus & elem = const_cast<DetODStatus &>((*dIt)->second); elem.region_range = region_range; elem.defined=true; LogDebug(category_)<<"detId: "<<(*dIt)->first<<" in region range: "<<region_range.first<<" "<<region_range.second; }//loop over MeasurementDet attached to that elementIndex }//loop over know elementindex }
std::string OnDemandMeasurementTracker::dumpCluster | ( | const std::vector< SiStripCluster >::const_iterator & | begin, |
const std::vector< SiStripCluster >::const_iterator & | end | ||
) | const [private] |
some printouts, exclusively under LogDebug
Definition at line 255 of file OnDemandMeasurementTracker.cc.
References begin, end, i, and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by assign(), and dumpRegion().
{ // dumpCluster is a printout of all the clusters between the iterator. returns a string std::string tab=" "; std::stringstream ss; std::vector<SiStripCluster> ::const_iterator it = begin; unsigned int i=0; for (;it!=end;++it){ ss<<tab<<i++<<") center: "<<it->barycenter()<<",id: "<<it->geographicalId()<<" with: "<<it->amplitudes().size()<<" strips\n"<<tab<<tab<<"{"; for (unsigned int is=0;is!=it->amplitudes().size();++is){ ss<<it->amplitudes()[is]<<" "; }ss<<"}\n"; } return ss.str(); }
std::string OnDemandMeasurementTracker::dumpRegion | ( | std::pair< unsigned int, unsigned int > | indexes, |
const RefGetter & | theGetter, | ||
bool | stayUnpacked = false |
||
) | const [private] |
Definition at line 271 of file OnDemandMeasurementTracker.cc.
References begin, dumpCluster(), end, pos, SiStripRegionCabling::position(), SiStripRegionCabling::positionIndex(), SiStripRegionCabling::region(), and theStripRegionCabling.
Referenced by assign(), and define().
{ // dumpRegion is a printout of all the clusters in a region defined on the RefGetter. returns a string std::stringstream ss; ss<<"cluster between: "<<indexes.first<<" and: "<<indexes.second<<"\n"; for (unsigned int iRegion = indexes.first; iRegion != indexes.second; ++iRegion){ uint32_t reg = SiStripRegionCabling::region((theGetter)[iRegion].region()); SiStripRegionCabling::Position pos = theStripRegionCabling->position(reg); SiStripRegionCabling::PositionIndex posI = theStripRegionCabling->positionIndex(reg); ss<<"Clusters for region:["<<iRegion<<"]" <<"\n element index: "<<(theGetter)[iRegion].region() <<"\n region absolute index: "<<reg <<"\n region position index: "<<posI.first<<" "<<posI.second <<"\n region position: "<<pos.first<<" "<<pos.second <<"\n"<< (stayPacked? " hidden to avoid unpacking." : dumpCluster((theGetter)[iRegion].begin(),(theGetter)[iRegion].end())); } return ss.str(); }
const MeasurementDet * OnDemandMeasurementTracker::idToDet | ( | const DetId & | id | ) | const [virtual] |
MeasurementDetSystem interface.
Reimplemented from MeasurementTrackerImpl.
Definition at line 358 of file OnDemandMeasurementTracker.cc.
References assign(), category_, LogDebug, StripOnDemand_, and theDetODMap.
{ // overloaded from MeasurementTracker // find the detid. if not found throw exception // if already updated: always for pixel or strip already queried. return it DetODContainer::iterator it = theDetODMap.find(id); if ( it != theDetODMap.end()) { //it has already been queried. and so already updated: nothing to be done here (valid for pixels too) if (it->second.updated){ LogDebug(category_)<<"found id: "<<id.rawId()<<" as aleardy updated."; return it->second.mdet; } if (StripOnDemand_){ //check glued or single if (it->second.glued){ //glued det LogDebug(category_)<<"updating glued id: "<<id.rawId(); //cast to specific type TkGluedMeasurementDet* theConcreteDet = static_cast<TkGluedMeasurementDet*>(it->second.mdet); // update the two components //update the mono assign(theConcreteDet->monoDet()); //update the stereo assign(theConcreteDet->stereoDet()); //flag the glued det as updated (components are flagged in assign) it->second.updated=true; }//glued det else{ //single layer LogDebug(category_)<<"updating singel id: "<<id.rawId(); //cast to specific type TkStripMeasurementDet* theConcreteDet = static_cast<TkStripMeasurementDet*>(it->second.mdet); //update the single layer assign(theConcreteDet,&it); }//single det } //eventually return it return it->second.mdet; }//found in the DetODMap else{ //throw excpetion edm::LogError(category_)<<"failed to find the MeasurementDet for: "<<id.rawId(); throw MeasurementDetException("failed to find the MeasurementDet for: <see message logger>"); } return 0; }
void OnDemandMeasurementTracker::update | ( | const edm::Event & | event | ) | const [virtual] |
MeasurementTracker overloaded function.
Reimplemented from MeasurementTrackerImpl.
Definition at line 230 of file OnDemandMeasurementTracker.cc.
References category_, LogDebug, PixelOnDemand_, StripOnDemand_, MeasurementTrackerImpl::updatePixels(), and updateStrips().
{ // update is supposed to be called by any module that is useing the MeasurementTracker // after checking the the event has not yet been seen // update the pixel using MeasurementTracekr specific function // retreive the RefGetter from the event: the very one that has been pass to define(...) and put into the event if (!PixelOnDemand_) { LogDebug(category_)<<"pixel are not OnDemand. updating them a la MeasurmentTracker."; MeasurementTrackerImpl::updatePixels(event);} else{ edm::LogError(category_)<<"trying to update siPixel as on-demand. Not Implemented yet."; } if (!StripOnDemand_) { LogDebug(category_)<<"strip are not OnDemand. updating them a la MeasurmentTracker."; MeasurementTrackerImpl::updateStrips(event);} else{ LogDebug(category_)<<"strip are OnDemand. updating them a la OnDemandMeasurmentTracker."; updateStrips(event); } }
void OnDemandMeasurementTracker::updateStrips | ( | const edm::Event & | event | ) | const [virtual] |
Reimplemented from MeasurementTrackerImpl.
Definition at line 194 of file OnDemandMeasurementTracker.cc.
References category_, StMeasurementDetSet::clusterToSkip(), edm::EventID::event(), edm::HandleBase::failedToGet(), MeasurementTrackerImpl::getInactiveStrips(), edm::ParameterSet::getParameter(), edm::EventBase::id(), LogDebug, MeasurementTrackerImpl::name_, MeasurementTrackerImpl::pset_, edm::EventID::run(), MeasurementTrackerImpl::selfUpdateSkipClusters_, StMeasurementDetSet::setLazyGetter(), AlCaHLTBitMon_QueryRunRegistry::string, theLazyGetterH, theRawInactiveStripDetIds, theRefGetterH, theSkipClusterRefs, MeasurementTrackerImpl::theStDets, and theStripClusterMask.
Referenced by update().
{ bool oncePerEvent= edm::Service<UpdaterService>()->checkOnce("OnDemandMeasurementTracker::updateStrips::"+name_); bool failedToGet = false; if (!oncePerEvent) failedToGet = theRefGetterH.failedToGet() || theLazyGetterH.failedToGet(); if (oncePerEvent || failedToGet) { LogDebug(category_)<<"Updating siStrip on event: "<< (unsigned int) event.id().run() <<" : "<<(unsigned int) event.id().event(); //get the ref getter back from the event std::string stripClusterProducer = pset_.getParameter<std::string>("stripClusterProducer"); event.getByLabel(stripClusterProducer,theRefGetterH); std::string stripLazyGetter = pset_.getParameter<std::string>("stripLazyGetterProducer"); event.getByLabel(stripLazyGetter,theLazyGetterH); theStDets.setLazyGetter(theLazyGetterH); //get the skip clusters if (selfUpdateSkipClusters_){ theSkipClusterRefs=true; event.getByLabel(pset_.getParameter<edm::InputTag>("skipClusters"),theStripClusterMask); theStripClusterMask->copyMaskTo(theStDets.clusterToSkip()); } else { theStDets.clusterToSkip().clear(); } //get the detid that are inactive theRawInactiveStripDetIds.clear(); getInactiveStrips(event,theRawInactiveStripDetIds); } }
std::string OnDemandMeasurementTracker::category_ [private] |
log category
Definition at line 50 of file OnDemandMeasurementTracker.h.
Referenced by assign(), define(), idToDet(), OnDemandMeasurementTracker(), update(), and updateStrips().
bool OnDemandMeasurementTracker::PixelOnDemand_ [private] |
internal flag to do pixel on demand (not configurable) false by default
Definition at line 56 of file OnDemandMeasurementTracker.h.
Referenced by update().
Definition at line 85 of file OnDemandMeasurementTracker.h.
Referenced by define(), and OnDemandMeasurementTracker().
bool OnDemandMeasurementTracker::StayPacked_ [private] |
internal flag to avoid unpacking things with LogDebug on
Definition at line 52 of file OnDemandMeasurementTracker.h.
Referenced by define().
bool OnDemandMeasurementTracker::StripOnDemand_ [private] |
internal flag to do strip on demand (not configurable) true by default
Definition at line 54 of file OnDemandMeasurementTracker.h.
DetODContainer OnDemandMeasurementTracker::theDetODMap [mutable, private] |
mapping of detid -> MeasurementDet+flags+region_range
Definition at line 81 of file OnDemandMeasurementTracker.h.
Referenced by assign(), define(), idToDet(), and OnDemandMeasurementTracker().
edm::Handle< edm::LazyGetter<SiStripCluster> > OnDemandMeasurementTracker::theLazyGetterH [mutable, private] |
Definition at line 63 of file OnDemandMeasurementTracker.h.
Referenced by updateStrips().
std::vector<uint32_t> OnDemandMeasurementTracker::theRawInactiveStripDetIds [mutable, private] |
Definition at line 97 of file OnDemandMeasurementTracker.h.
Referenced by assign(), OnDemandMeasurementTracker(), and updateStrips().
edm::Handle< edm::RefGetter<SiStripCluster> > OnDemandMeasurementTracker::theRefGetterH [mutable, private] |
the handle is retrieved from the event to make reference to cluster in it
Definition at line 62 of file OnDemandMeasurementTracker.h.
Referenced by assign(), and updateStrips().
bool OnDemandMeasurementTracker::theSkipClusterRefs [mutable, private] |
Definition at line 64 of file OnDemandMeasurementTracker.h.
Referenced by updateStrips().
edm::Handle< edm::ContainerMask<edm::LazyGetter<SiStripCluster> > > OnDemandMeasurementTracker::theStripClusterMask [mutable, private] |
Definition at line 65 of file OnDemandMeasurementTracker.h.
Referenced by updateStrips().
const SiStripRegionCabling* OnDemandMeasurementTracker::theStripRegionCabling [private] |
the cabling region tool to update a RefGetter
Definition at line 59 of file OnDemandMeasurementTracker.h.
Referenced by define(), dumpRegion(), and OnDemandMeasurementTracker().