CMS 3D CMS Logo

MeasurementTrackerImpl.cc
Go to the documentation of this file.
2 
5 
11 
13 
15 
21 
23 
28 
31 #include "TkStripMeasurementDet.h"
32 #include "TkPixelMeasurementDet.h"
34 #include "TkGluedMeasurementDet.h"
35 #include "TkStackMeasurementDet.h"
36 
39 
40 #include <iostream>
41 #include <typeinfo>
42 #include <map>
43 #include <algorithm>
44 
45 //
46 
47 using namespace std;
48 
49 namespace {
50 
51  class StrictWeakOrdering {
52  public:
53  bool operator()(uint32_t p, const uint32_t& i) const { return p < i; }
54  };
55 
56  struct CmpTKD {
57  bool operator()(MeasurementDet const* rh, MeasurementDet const* lh) {
58  return rh->fastGeomDet().geographicalId().rawId() < lh->fastGeomDet().geographicalId().rawId();
59  }
60  bool operator()(MeasurementDet const& rh, MeasurementDet const& lh) {
61  return rh.fastGeomDet().geographicalId().rawId() < lh.fastGeomDet().geographicalId().rawId();
62  }
63  };
64 
65  template <typename TKD>
66  void sortTKD(std::vector<TKD*>& det) {
67  std::sort(det.begin(), det.end(), CmpTKD());
68  }
69  template <typename TKD>
70  void sortTKD(std::vector<TKD>& det) {
71  std::sort(det.begin(), det.end(), CmpTKD());
72  }
73 
74 } // namespace
75 
78  const StripClusterParameterEstimator* stripCPE,
79  const SiStripRecHitMatcher* hitMatcher,
80  const TrackerTopology* trackerTopology,
81  const TrackerGeometry* trackerGeom,
82  const GeometricSearchTracker* geometricSearchTracker,
83  const SiStripQuality* stripQuality,
84  int stripQualityFlags,
85  int stripQualityDebugFlags,
86  const SiPixelQuality* pixelQuality,
87  const SiPixelFedCabling* pixelCabling,
88  int pixelQualityFlags,
89  int pixelQualityDebugFlags,
91  : MeasurementTracker(trackerGeom, geometricSearchTracker),
92  theStDetConditions(hitMatcher, stripCPE),
93  thePxDetConditions(pixelCPE),
94  thePhase2DetConditions(phase2OTCPE) {
95  this->initialize(trackerTopology);
96  this->initializeStripStatus(badStripCuts, stripQuality, stripQualityFlags, stripQualityDebugFlags);
97  this->initializePixelStatus(pixelQuality, pixelCabling, pixelQualityFlags, pixelQualityDebugFlags);
98 }
99 
101 
103  bool subIsPixel = false;
104  //FIXME:just temporary solution for phase2 :
105  //the OT is defined as PixelSubDetector!
106  bool subIsOT = false;
107 
108  //if the TkGeometry has the subDet vector filled, the theDetMap is filled, otherwise nothing should happen
109  if (!theTrackerGeom->detsPXB().empty()) {
111  theTrackerGeom->geomDetSubDetector(theTrackerGeom->detsPXB().front()->geographicalId().subdetId()));
112  addDets(theTrackerGeom->detsPXB(), subIsPixel, subIsOT);
113  }
114 
115  if (!theTrackerGeom->detsPXF().empty()) {
117  theTrackerGeom->geomDetSubDetector(theTrackerGeom->detsPXF().front()->geographicalId().subdetId()));
118  addDets(theTrackerGeom->detsPXF(), subIsPixel, subIsOT);
119  }
120 
121  subIsOT = true;
122 
123  if (!theTrackerGeom->detsTIB().empty()) {
125  theTrackerGeom->geomDetSubDetector(theTrackerGeom->detsTIB().front()->geographicalId().subdetId()));
126  addDets(theTrackerGeom->detsTIB(), subIsPixel, subIsOT);
127  }
128 
129  if (!theTrackerGeom->detsTID().empty()) {
131  theTrackerGeom->geomDetSubDetector(theTrackerGeom->detsTID().front()->geographicalId().subdetId()));
132  addDets(theTrackerGeom->detsTID(), subIsPixel, subIsOT);
133  }
134 
135  if (!theTrackerGeom->detsTOB().empty()) {
137  theTrackerGeom->geomDetSubDetector(theTrackerGeom->detsTOB().front()->geographicalId().subdetId()));
138  addDets(theTrackerGeom->detsTOB(), subIsPixel, subIsOT);
139  }
140 
141  if (!theTrackerGeom->detsTEC().empty()) {
143  theTrackerGeom->geomDetSubDetector(theTrackerGeom->detsTEC().front()->geographicalId().subdetId()));
144  addDets(theTrackerGeom->detsTEC(), subIsPixel, subIsOT);
145  }
146 
147  // fist all stripdets
148  sortTKD(theStripDets);
150  for (unsigned int i = 0; i != theStripDets.size(); ++i)
152 
153  // now the glued dets
154  sortTKD(theGluedDets);
155  for (unsigned int i = 0; i != theGluedDets.size(); ++i)
156  initGluedDet(theGluedDets[i], trackerTopology);
157 
158  // then the pixels
159  sortTKD(thePixelDets);
161  for (unsigned int i = 0; i != thePixelDets.size(); ++i)
163 
164  // then the phase2 dets
165  sortTKD(thePhase2Dets);
167  for (unsigned int i = 0; i != thePhase2Dets.size(); ++i)
169 
170  // and then the stack dets, at last
171  sortTKD(theStackDets);
172  for (unsigned int i = 0; i != theStackDets.size(); ++i)
174 
175  if (!checkDets())
176  throw MeasurementDetException("Number of dets in MeasurementTracker not consistent with TrackerGeometry!");
177 }
178 
179 void MeasurementTrackerImpl::initStMeasurementConditionSet(std::vector<TkStripMeasurementDet>& stripDets) {
180  // assume vector is full and ordered!
181  int size = stripDets.size();
183  for (int i = 0; i != size; ++i) {
184  auto& mdet = stripDets[i];
185  mdet.setIndex(i);
186  //intialize the detId !
187  theStDetConditions.id_[i] = mdet.specificGeomDet().geographicalId().rawId();
189  //initalize the total number of strips
190  theStDetConditions.totalStrips_[i] = mdet.specificGeomDet().specificTopology().nstrips();
191  }
192 }
193 
194 void MeasurementTrackerImpl::initPxMeasurementConditionSet(std::vector<TkPixelMeasurementDet>& pixelDets) {
195  // assume vector is full and ordered!
196  int size = pixelDets.size();
198 
199  for (int i = 0; i != size; ++i) {
200  auto& mdet = pixelDets[i];
201  mdet.setIndex(i);
202  thePxDetConditions.id_[i] = mdet.specificGeomDet().geographicalId().rawId();
203  }
204 }
205 
206 void MeasurementTrackerImpl::initPhase2OTMeasurementConditionSet(std::vector<TkPhase2OTMeasurementDet>& phase2Dets) {
207  // assume vector is full and ordered!
208  int size = phase2Dets.size();
210 
211  for (int i = 0; i != size; ++i) {
212  auto& mdet = phase2Dets[i];
213  mdet.setIndex(i);
214  thePhase2DetConditions.id_[i] = mdet.specificGeomDet().geographicalId().rawId();
215  }
216 }
217 
218 void MeasurementTrackerImpl::addDets(const TrackingGeometry::DetContainer& dets, bool subIsPixel, bool subIsOT) {
219  //in phase2, we can have composed subDetector made by Pixel or Strip
220  for (TrackerGeometry::DetContainer::const_iterator gd = dets.begin(); gd != dets.end(); gd++) {
221  const GeomDetUnit* gdu = dynamic_cast<const GeomDetUnit*>(*gd);
222 
223  //Pixel or Strip GeomDetUnit
224  if (gdu->isLeaf()) {
225  if (subIsPixel) {
226  if (!subIsOT) {
227  addPixelDet(*gd);
228  } else {
229  addPhase2Det(*gd);
230  }
231  } else {
232  addStripDet(*gd);
233  }
234  } else {
235  //Glued or Stack GeomDet
236  const GluedGeomDet* gluedDet = dynamic_cast<const GluedGeomDet*>(*gd);
237  const StackGeomDet* stackDet = dynamic_cast<const StackGeomDet*>(*gd);
238 
239  if ((gluedDet == nullptr && stackDet == nullptr) || (gluedDet != nullptr && stackDet != nullptr)) {
240  throw MeasurementDetException("MeasurementTracker ERROR: GeomDet neither DetUnit nor GluedDet nor StackDet");
241  }
242  if (gluedDet != nullptr)
243  addGluedDet(gluedDet);
244  else
245  addStackDet(stackDet);
246  }
247  }
248 }
249 
251  if (theTrackerGeom->dets().size() == theDetMap.size())
252  return true;
253  return false;
254 }
255 
257  try {
259  } catch (MeasurementDetException& err) {
260  edm::LogError("MeasurementDet") << "Oops, got a MeasurementDetException: " << err.what();
261  }
262 }
263 
265  try {
267  } catch (MeasurementDetException& err) {
268  edm::LogError("MeasurementDet") << "Oops, got a MeasurementDetException: " << err.what();
269  }
270 }
271 
273  try {
275  } catch (MeasurementDetException& err) {
276  edm::LogError("MeasurementDet") << "Oops, got a MeasurementDetException: " << err.what();
277  }
278 }
279 
282 }
283 
285  //since the Stack will be composed by PS or 2S,
286  //both cluster parameter estimators are needed? - right now just the thePixelCPE is used.
288 }
289 
291  const GluedGeomDet& gd = det.specificGeomDet();
292  const MeasurementDet* monoDet = findDet(gd.monoDet()->geographicalId());
293  const MeasurementDet* stereoDet = findDet(gd.stereoDet()->geographicalId());
294  if (monoDet == nullptr || stereoDet == nullptr) {
295  edm::LogError("MeasurementDet") << "MeasurementTracker ERROR: GluedDet components not found as MeasurementDets ";
296  throw MeasurementDetException("MeasurementTracker ERROR: GluedDet components not found as MeasurementDets");
297  }
298  det.init(monoDet, stereoDet, trackerTopology);
299  theDetMap[gd.geographicalId()] = &det;
300 }
301 
303  const StackGeomDet& gd = det.specificGeomDet();
304  const MeasurementDet* lowerDet = findDet(gd.lowerDet()->geographicalId());
305  const MeasurementDet* upperDet = findDet(gd.upperDet()->geographicalId());
306  if (lowerDet == nullptr || upperDet == nullptr) {
307  edm::LogError("MeasurementDet") << "MeasurementTracker ERROR: StackDet components not found as MeasurementDets ";
308  throw MeasurementDetException("MeasurementTracker ERROR: StackDet components not found as MeasurementDets");
309  }
310  det.init(lowerDet, upperDet);
311  theDetMap[gd.geographicalId()] = &det;
312 }
313 
315  const SiStripQuality* quality,
316  int qualityFlags,
317  int qualityDebugFlags) {
318  if (qualityFlags & BadStrips) {
323  }
325 
326  if ((quality != nullptr) && (qualityFlags != 0)) {
327  edm::LogInfo("MeasurementTracker") << "qualityFlags = " << qualityFlags;
328  unsigned int on = 0, tot = 0;
329  unsigned int foff = 0, ftot = 0, aoff = 0, atot = 0;
330  for (int i = 0; i != theStDetConditions.nDet(); i++) {
331  uint32_t detid = theStDetConditions.id(i);
332  if (qualityFlags & BadModules) {
333  bool isOn = quality->IsModuleUsable(detid);
335  tot++;
336  on += (unsigned int)isOn;
337  if (qualityDebugFlags & BadModules) {
338  edm::LogInfo("MeasurementTracker")
339  << "MeasurementTrackerImpl::initializeStripStatus : detid " << detid << " is " << (isOn ? "on" : "off");
340  }
341  } else {
343  }
344  // first turn all APVs and fibers ON
346  if (qualityFlags & BadAPVFibers) {
347  short badApvs = quality->getBadApvs(detid);
348  short badFibers = quality->getBadFibers(detid);
349  for (int j = 0; j < 6; j++) {
350  atot++;
351  if (badApvs & (1 << j)) {
353  aoff++;
354  }
355  }
356  for (int j = 0; j < 3; j++) {
357  ftot++;
358  if (badFibers & (1 << j)) {
360  theStDetConditions.set128StripStatus(i, false, 2 * j + 1);
361  foff++;
362  }
363  }
364  }
365  auto& badStrips = theStDetConditions.getBadStripBlocks(i);
366  badStrips.clear();
367  if (qualityFlags & BadStrips) {
368  SiStripBadStrip::Range range = quality->getRange(detid);
369  for (SiStripBadStrip::ContainerIterator bit = range.first; bit != range.second; ++bit) {
370  badStrips.push_back(quality->decode(*bit));
371  }
372  }
373  }
374  if (qualityDebugFlags & BadModules) {
375  edm::LogInfo("MeasurementTracker StripModuleStatus")
376  << " Total modules: " << tot << ", active " << on << ", inactive " << (tot - on);
377  }
378  if (qualityDebugFlags & BadAPVFibers) {
379  edm::LogInfo("MeasurementTracker StripAPVStatus")
380  << " Total APVs: " << atot << ", active " << (atot - aoff) << ", inactive " << (aoff);
381  edm::LogInfo("MeasurementTracker StripFiberStatus")
382  << " Total Fibers: " << ftot << ", active " << (ftot - foff) << ", inactive " << (foff);
383  }
384  } else {
385  for (int i = 0; i != theStDetConditions.nDet(); i++) {
386  theStDetConditions.setActive(i, true); // module ON
387  theStDetConditions.set128StripStatus(i, true); // all APVs and fibers ON
388  }
389  }
390 }
391 
393  const SiPixelFedCabling* pixelCabling,
394  int qualityFlags,
395  int qualityDebugFlags) {
396  if ((quality != nullptr) && (qualityFlags != 0)) {
397  edm::LogInfo("MeasurementTracker") << "qualityFlags = " << qualityFlags;
398  unsigned int on = 0, tot = 0, badrocs = 0;
399  for (std::vector<TkPixelMeasurementDet>::iterator i = thePixelDets.begin(); i != thePixelDets.end(); i++) {
400  uint32_t detid = ((*i).geomDet().geographicalId()).rawId();
401  if (qualityFlags & BadModules) {
402  bool isOn = quality->IsModuleUsable(detid);
403  (i)->setActive(isOn);
404  tot++;
405  on += (unsigned int)isOn;
406  if (qualityDebugFlags & BadModules) {
407  edm::LogInfo("MeasurementTracker")
408  << "MeasurementTrackerImpl::initializePixelStatus : detid " << detid << " is " << (isOn ? "on" : "off");
409  }
410  } else {
411  (i)->setActive(true);
412  }
413  if ((qualityFlags & BadROCs) && (quality->getBadRocs(detid) != 0)) {
414  std::vector<LocalPoint> badROCs = quality->getBadRocPositions(detid, *theTrackerGeom, pixelCabling);
415  badrocs += badROCs.size();
416  (i)->setBadRocPositions(badROCs);
417  } else {
418  (i)->clearBadRocPositions();
419  }
420  }
421  if (qualityDebugFlags & BadModules) {
422  edm::LogInfo("MeasurementTracker PixelModuleStatus")
423  << " Total modules: " << tot << ", active " << on << ", inactive " << (tot - on);
424  }
425  if (qualityDebugFlags & BadROCs) {
426  edm::LogInfo("MeasurementTracker PixelROCStatus") << " Total of bad ROCs: " << badrocs;
427  }
428  } else {
429  for (std::vector<TkPixelMeasurementDet>::iterator i = thePixelDets.begin(); i != thePixelDets.end(); i++) {
430  (i)->setActive(true); // module ON
431  }
432  }
433 }
PixelClusterParameterEstimator
Definition: PixelClusterParameterEstimator.h:15
FastTimerService_cff.range
range
Definition: FastTimerService_cff.py:34
MeasurementTrackerImpl::initialize
void initialize(const TrackerTopology *trackerTopology)
Definition: MeasurementTrackerImpl.cc:102
MeasurementTrackerImpl::initPhase2OTMeasurementConditionSet
void initPhase2OTMeasurementConditionSet(std::vector< TkPhase2OTMeasurementDet > &phase2Dets)
Definition: MeasurementTrackerImpl.cc:206
MeasurementTrackerImpl::addGluedDet
void addGluedDet(const GluedGeomDet *gd)
Definition: MeasurementTrackerImpl.cc:280
MeasurementTrackerImpl::thePhase2DetConditions
Phase2OTMeasurementConditionSet thePhase2DetConditions
Definition: MeasurementTrackerImpl.h:111
mps_fire.i
i
Definition: mps_fire.py:428
Phase2OTMeasurementConditionSet::id_
std::vector< unsigned int > id_
Definition: TkMeasurementDetSet.h:429
PixelSubdetector.h
MessageLogger.h
HLT_FULL_cff.MeasurementTracker
MeasurementTracker
Definition: HLT_FULL_cff.py:9582
TkGluedMeasurementDet.h
ContainerMask.h
MeasurementTrackerImpl::initializePixelStatus
void initializePixelStatus(const SiPixelQuality *stripQuality, const SiPixelFedCabling *pixelCabling, int qualityFlags, int qualityDebugFlags)
Definition: MeasurementTrackerImpl.cc:392
TrackerGeometry.h
GeomDet
Definition: GeomDet.h:27
ESHandle.h
StMeasurementConditionSet::id
unsigned int id(int i) const
Definition: TkMeasurementDetSet.h:70
MeasurementTrackerImpl::MeasurementTrackerImpl
MeasurementTrackerImpl(const BadStripCutsDet &badStripCuts, const PixelClusterParameterEstimator *pixelCPE, const StripClusterParameterEstimator *stripCPE, const SiStripRecHitMatcher *hitMatcher, const TrackerTopology *trackerTopology, const TrackerGeometry *trackerGeom, const GeometricSearchTracker *geometricSearchTracker, const SiStripQuality *stripQuality, int stripQualityFlags, int stripQualityDebugFlags, const SiPixelQuality *pixelQuality, const SiPixelFedCabling *pixelCabling, int pixelQualityFlags, int pixelQualityDebugFlags, const ClusterParameterEstimator< Phase2TrackerCluster1D > *phase2OTCPE=nullptr)
Definition: MeasurementTrackerImpl.cc:76
TrackerTopology
Definition: TrackerTopology.h:16
MeasurementTrackerImpl::thePxDetConditions
PxMeasurementConditionSet thePxDetConditions
Definition: MeasurementTrackerImpl.h:110
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
PixelClusterParameterEstimator.h
TrackerRecoGeometryRecord.h
MeasurementDetException.h
Phase2OTMeasurementConditionSet::init
void init(int size)
Definition: TkMeasurementDetSet.cc:42
GluedGeomDet::monoDet
const GeomDetUnit * monoDet() const
Definition: GluedGeomDet.h:19
StackGeomDet::upperDet
const GeomDetUnit * upperDet() const
Definition: StackGeomDet.h:20
GluedGeomDet.h
MeasurementTrackerImpl::theGluedDets
std::vector< TkGluedMeasurementDet > theGluedDets
Definition: MeasurementTrackerImpl.h:118
mathSSE::lh
bool int lh
Definition: SIMDVec.h:20
MeasurementTrackerImpl::BadROCs
Definition: MeasurementTrackerImpl.h:45
SiStripNoises.h
MeasurementDet
Definition: MeasurementDet.h:16
StMeasurementConditionSet::totalStrips_
std::vector< int > totalStrips_
Definition: TkMeasurementDetSet.h:127
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
SiPixelFedCabling
Definition: SiPixelFedCabling.h:10
TrackerGeometry::detsPXB
const DetContainer & detsPXB() const
Definition: TrackerGeometry.cc:171
PxMeasurementConditionSet::pixelCPE
const PixelClusterParameterEstimator * pixelCPE() const
Definition: TkMeasurementDetSet.h:305
StripClusterParameterEstimator
Definition: StripClusterParameterEstimator.h:25
GeometricSearchTracker.h
MeasurementTrackerImpl::initializeStripStatus
void initializeStripStatus(const BadStripCutsDet &badStripCuts, const SiStripQuality *stripQuality, int qualityFlags, int qualityDebugFlags)
Definition: MeasurementTrackerImpl.cc:314
MeasurementTrackerImpl::theStripDets
std::vector< TkStripMeasurementDet > theStripDets
Definition: MeasurementTrackerImpl.h:116
SiStripBadStrip::Range
std::pair< ContainerIterator, ContainerIterator > Range
Definition: SiStripBadStrip.h:53
HLT_FULL_cff.pixelCPE
pixelCPE
Definition: HLT_FULL_cff.py:50750
TrackerGeometry::detsTOB
const DetContainer & detsTOB() const
Definition: TrackerGeometry.cc:179
MeasurementDetException
Common base class.
Definition: MeasurementDetException.h:12
MeasurementTrackerImpl::addPhase2Det
void addPhase2Det(const GeomDet *gd)
Definition: MeasurementTrackerImpl.cc:272
StMeasurementConditionSet::badStripCuts_
BadStripCuts badStripCuts_[4]
Definition: TkMeasurementDetSet.h:121
StMeasurementConditionSet::stripCPE
const StripClusterParameterEstimator * stripCPE() const
Definition: TkMeasurementDetSet.h:67
PxMeasurementConditionSet::id
unsigned int id(int i) const
Definition: TkMeasurementDetSet.h:302
StMeasurementConditionSet::matcher
const SiStripRecHitMatcher * matcher() const
Definition: TkMeasurementDetSet.h:66
MeasurementTrackerImpl::theStackDets
std::vector< TkStackMeasurementDet > theStackDets
Definition: MeasurementTrackerImpl.h:119
TkStackMeasurementDet::init
void init(const MeasurementDet *lowerDet, const MeasurementDet *upperDet)
Definition: TkStackMeasurementDet.cc:10
MeasurementTrackerImpl::findDet
const MeasurementDet * findDet(const DetId &id) const
Definition: MeasurementTrackerImpl.h:84
PxMeasurementConditionSet::init
void init(int size)
Definition: TkMeasurementDetSet.cc:37
IdealMagneticFieldRecord.h
TrackerGeometry::detsPXF
const DetContainer & detsPXF() const
Definition: TrackerGeometry.cc:173
StackGeomDet::lowerDet
const GeomDetUnit * lowerDet() const
Definition: StackGeomDet.h:19
MeasurementTrackerImpl::addDets
void addDets(const TrackingGeometry::DetContainer &dets, bool subIsPixel, bool subIsOT)
Definition: MeasurementTrackerImpl.cc:218
SiStripDetId::TEC
static constexpr auto TEC
Definition: SiStripDetId.h:40
TrackerGeometry::detsTID
const DetContainer & detsTID() const
Definition: TrackerGeometry.cc:177
ClusterParameterEstimator< Phase2TrackerCluster1D >
GluedGeomDet
Definition: GluedGeomDet.h:7
TkStackMeasurementDet
Definition: TkStackMeasurementDet.h:14
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
TkPhase2OTMeasurementDet.h
MeasurementTrackerImpl.h
GeomDet::geographicalId
DetId geographicalId() const
The label of this GeomDet.
Definition: GeomDet.h:64
TrackerDigiGeometryRecord.h
TkGluedMeasurementDet
Definition: TkGluedMeasurementDet.h:17
TkStripMeasurementDet
Definition: TkStripMeasurementDet.h:74
StMeasurementConditionSet::setMaskBad128StripBlocks
void setMaskBad128StripBlocks(bool maskThem)
Definition: TkMeasurementDetSet.h:82
MeasurementTrackerImpl::addStripDet
void addStripDet(const GeomDet *gd)
Definition: MeasurementTrackerImpl.cc:256
TrackerGeometry::geomDetSubDetector
const GeomDetEnumerators::SubDetector geomDetSubDetector(int subdet) const
Definition: TrackerGeometry.cc:203
SiPixelQuality
Definition: SiPixelQuality.h:27
StMeasurementConditionSet::getBadStripBlocks
std::vector< BadStripBlock > & getBadStripBlocks(int i)
Definition: TkMeasurementDetSet.h:92
StMeasurementConditionSet::subId_
std::vector< unsigned char > subId_
Definition: TkMeasurementDetSet.h:125
MeasurementTrackerImpl::MaskBad128StripBlocks
Definition: MeasurementTrackerImpl.h:44
TkStripMeasurementDet.h
MeasurementTrackerImpl::addPixelDet
void addPixelDet(const GeomDet *gd)
Definition: MeasurementTrackerImpl.cc:264
TrackingGeometry::DetContainer
std::vector< const GeomDet * > DetContainer
Definition: TrackingGeometry.h:29
createfilelist.int
int
Definition: createfilelist.py:10
TrackerCPERecord.h
GeomDetEnumerators::isTrackerPixel
bool isTrackerPixel(GeomDetEnumerators::SubDetector m)
Definition: GeomDetEnumerators.cc:68
MeasurementTrackerImpl::thePixelDets
std::vector< TkPixelMeasurementDet > thePixelDets
Definition: MeasurementTrackerImpl.h:115
TrackerGeometry::detsTIB
const DetContainer & detsTIB() const
Definition: TrackerGeometry.cc:175
SiStripDetId::TOB
static constexpr auto TOB
Definition: SiStripDetId.h:39
TrackerGeometry::dets
const DetContainer & dets() const override
Returm a vector of all GeomDet (including all GeomDetUnits)
Definition: TrackerGeometry.h:62
MeasurementTrackerImpl::pixelDets
const std::vector< TkPixelMeasurementDet > & pixelDets() const
Definition: MeasurementTrackerImpl.h:100
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
StMeasurementConditionSet::init
void init(int size)
Definition: TkMeasurementDetSet.cc:3
TkStackMeasurementDet::specificGeomDet
const StackGeomDet & specificGeomDet() const
Definition: TkStackMeasurementDet.h:21
submitPVResolutionJobs.err
err
Definition: submitPVResolutionJobs.py:85
MeasurementTrackerImpl::initStMeasurementConditionSet
void initStMeasurementConditionSet(std::vector< TkStripMeasurementDet > &stripDets)
Definition: MeasurementTrackerImpl.cc:179
MeasurementTrackerImpl::BadAPVFibers
Definition: MeasurementTrackerImpl.h:42
StackGeomDet.h
MeasurementTrackerImpl::theDetMap
DetContainer theDetMap
Definition: MeasurementTrackerImpl.h:113
MeasurementTrackerImpl::initStackDet
void initStackDet(TkStackMeasurementDet &det)
Definition: MeasurementTrackerImpl.cc:302
TkPhase2OTMeasurementDet
Definition: TkPhase2OTMeasurementDet.h:16
MeasurementTrackerImpl::initPxMeasurementConditionSet
void initPxMeasurementConditionSet(std::vector< TkPixelMeasurementDet > &pixelDets)
Definition: MeasurementTrackerImpl.cc:194
TkPixelMeasurementDet.h
MeasurementTrackerImpl::theStDetConditions
StMeasurementConditionSet theStDetConditions
Definition: MeasurementTrackerImpl.h:109
MeasurementTrackerImpl::checkDets
bool checkDets()
Definition: MeasurementTrackerImpl.cc:250
SiStripDetId::TID
static constexpr auto TID
Definition: SiStripDetId.h:38
GluedGeomDet::stereoDet
const GeomDetUnit * stereoDet() const
Definition: GluedGeomDet.h:20
MeasurementTrackerImpl::~MeasurementTrackerImpl
~MeasurementTrackerImpl() override
Definition: MeasurementTrackerImpl.cc:100
GeomDet.h
SiStripRecHitMatcher.h
StackGeomDet
Definition: StackGeomDet.h:7
std
Definition: JetResolutionObject.h:76
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
TkGluedMeasurementDet::init
void init(const MeasurementDet *monoDet, const MeasurementDet *stereoDet, const TrackerTopology *tTopo)
Definition: TkGluedMeasurementDet.cc:72
StMeasurementConditionSet::setActive
void setActive(int i, bool active)
Turn on/off the module for reconstruction, for the full run or lumi (using info from DB,...
Definition: TkMeasurementDetSet.h:78
qcdUeDQM_cfi.quality
quality
Definition: qcdUeDQM_cfi.py:31
HLTSiStripMonitoring_cff.badStripCuts
badStripCuts
Definition: HLTSiStripMonitoring_cff.py:100
TrackerGeometry::detsTEC
const DetContainer & detsTEC() const
Definition: TrackerGeometry.cc:181
MeasurementTrackerImpl::initGluedDet
void initGluedDet(TkGluedMeasurementDet &det, const TrackerTopology *trackerTopology)
Definition: MeasurementTrackerImpl.cc:290
GeometricSearchTracker
Definition: GeometricSearchTracker.h:14
MeasurementTrackerImpl::addStackDet
void addStackDet(const StackGeomDet *gd)
Definition: MeasurementTrackerImpl.cc:284
SiStripDetId::TIB
static constexpr auto TIB
Definition: SiStripDetId.h:37
MeasurementTrackerImpl::BadStripCutsDet
Definition: MeasurementTrackerImpl.h:48
MeasurementTrackerImpl::stripDets
const std::vector< TkStripMeasurementDet > & stripDets() const
Definition: MeasurementTrackerImpl.h:99
SiStripNoisesRcd.h
TkStackMeasurementDet.h
SiStripDetId
Detector identifier class for the strip tracker.
Definition: SiStripDetId.h:18
Phase2OTMeasurementConditionSet::id
unsigned int id(int i) const
Definition: TkMeasurementDetSet.h:412
SiStripRecHitMatcher
Definition: SiStripRecHitMatcher.h:24
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
StMeasurementConditionSet::nDet
int nDet() const
Definition: TkMeasurementDetSet.h:69
MeasurementTrackerImpl::thePhase2Dets
std::vector< TkPhase2OTMeasurementDet > thePhase2Dets
Definition: MeasurementTrackerImpl.h:117
StripCPE.h
StMeasurementConditionSet::id_
std::vector< unsigned int > id_
Definition: TkMeasurementDetSet.h:124
MeasurementDet::fastGeomDet
const GeomDet & fastGeomDet() const
Definition: MeasurementDet.h:80
SiStripClusterCollection.h
MeasurementTrackerImpl::BadModules
Definition: MeasurementTrackerImpl.h:41
StMeasurementConditionSet::set128StripStatus
void set128StripStatus(int i, bool good, int idx=-1)
Definition: TkMeasurementDetSet.cc:14
PxMeasurementConditionSet::id_
std::vector< unsigned int > id_
Definition: TkMeasurementDetSet.h:319
StripSubdetector.h
GeomDet::isLeaf
virtual bool isLeaf() const
is a Unit
Definition: GeomDet.h:70
SiStripBadStrip::ContainerIterator
std::vector< unsigned int >::const_iterator ContainerIterator
Definition: SiStripBadStrip.h:52
MeasurementTrackerImpl::BadStrips
Definition: MeasurementTrackerImpl.h:43
DetIdCollection.h
MeasurementTracker::theTrackerGeom
const TrackerGeometry * theTrackerGeom
Definition: MeasurementTracker.h:49
TkPixelMeasurementDet
Definition: TkPixelMeasurementDet.h:17
findQualityFiles.size
size
Write out results.
Definition: findQualityFiles.py:443
TrackerGeometry
Definition: TrackerGeometry.h:14
TkGluedMeasurementDet::specificGeomDet
const GluedGeomDet & specificGeomDet() const
Definition: TkGluedMeasurementDet.h:32
SiStripQuality
Definition: SiStripQuality.h:32