1 #ifndef RecoTracker_MeasurementDet_OnDemandMeasurementTracker_H
2 #define RecoTracker_MeasurementDet_OnDemandMeasurementTracker_H
11 #include<unordered_map>
23 int stripQualityFlags,
24 int stripQualityDebugFlags,
27 int pixelQualityFlags,
28 int pixelQualityDebugFlags,
30 bool isRegional=
false);
72 typedef std::vector<std::pair<SiStripRegionCabling::ElementIndex, std::vector<DetODContainer::const_iterator> > >
RegionalMap;
76 void assign(
const TkStripMeasurementDet * csmdet,
83 bool stayUnpacked =
false)
const;
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
RegionalMap region_mapping
const MeasurementDet * idToDetBare(const DetId &id, const MeasurementTrackerEvent &data) const
MeasurementTrackerImpl interface.
void define(const edm::Handle< edm::LazyGetter< SiStripCluster > > &, RefGetter &, StMeasurementDetSet &) const
OnDemandMeasurementTracker specific function to be called to define the region in the RefGetter accor...
bool PixelOnDemand_
internal flag to do pixel on demand (not configurable) false by default
std::unordered_map< unsigned int, DetODStatus > DetODContainer
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 de...
const SiStripRegionCabling * theStripRegionCabling
the cabling region tool to update a RefGetter
void assign(const TkStripMeasurementDet *csmdet, const MeasurementTrackerEvent &data) 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
edm::LazyGetter< SiStripCluster > LazyGetter
edm::RefGetter< SiStripCluster > RefGetter
DetODContainer theDetODMap
mapping of detid -> MeasurementDet+flags+region_range
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
std::string category_
log category
virtual ~OnDemandMeasurementTracker()
destructor
char data[epos_bytes_allocation]
DetODStatus(const MeasurementDet *m)
std::string dumpRegion(std::pair< unsigned int, unsigned int > indexes, const RefGetter &theGetter, bool stayUnpacked=false) const
const MeasurementDet * mdet
const GeometricSearchTracker * geometricSearchTracker() const