CMS 3D CMS Logo

TkMeasurementDetSet.h
Go to the documentation of this file.
1 #ifndef StMeasurementDetSet_H
2 #define StMeasurementDetSet_H
3 
4 #include <vector>
11 class Phase2StripCPE;
12 
19 
22 
23 #include <unordered_map>
24 
25 // #define VISTAT
26 
27 #ifdef VISTAT
28 #include <iostream>
29 #define COUT std::cout
30 #else
31 #define COUT LogDebug("")
32 #endif
33 
34 /* Struct of arrays supporting "members of Tk...MeasurementDet
35  * implemented with vectors, to be optimized...
36  ITEMS THAT DO NOT DEPEND ON THE EVENT
37  */
39 public:
40  enum QualityFlags {
41  BadModules = 1, // for everybody
42  /* Strips: */ BadAPVFibers = 2,
43  BadStrips = 4,
45  /* Pixels: */ BadROCs = 2
46  };
47 
48  struct BadStripCuts {
50  BadStripCuts(uint32_t iMaxBad, uint32_t iMaxConsecutiveBad)
51  : maxBad(iMaxBad), maxConsecutiveBad(iMaxConsecutiveBad) {}
53  };
54 
55  struct BadStripBlock {
56  short first;
57  short last;
58  BadStripBlock(const SiStripBadStrip::data& data) : first(data.firstStrip), last(data.firstStrip + data.range - 1) {}
59  };
60 
62  : theMatcher(matcher), theCPE(cpe) {}
63 
64  void init(int size);
65 
66  const SiStripRecHitMatcher* matcher() const { return theMatcher; }
67  const StripClusterParameterEstimator* stripCPE() const { return theCPE; }
68 
69  int nDet() const { return id_.size(); }
70  unsigned int id(int i) const { return id_[i]; }
71  unsigned char subId(int i) const { return subId_[i]; }
72 
73  int find(unsigned int jd, int i = 0) const { return std::lower_bound(id_.begin() + i, id_.end(), jd) - id_.begin(); }
74 
75  bool isActiveThisPeriod(int i) const { return activeThisPeriod_[i]; }
76 
78  void setActive(int i, bool active) { activeThisPeriod_[i] = active; }
79 
80  int totalStrips(int i) const { return totalStrips_[i]; }
81 
82  void setMaskBad128StripBlocks(bool maskThem) { maskBad128StripBlocks_ = maskThem; }
83  const BadStripCuts& badStripCuts(int i) const { return badStripCuts_[subId_[i]]; }
84 
86  bool hasAny128StripBad(int i) const { return hasAny128StripBad_[i]; }
87 
89  bool bad128Strip(int offset) const { return bad128Strip_[offset]; }
90  bool bad128Strip(int index, int strip) const { return bad128Strip_[nbad128 * index + (strip >> 7)]; }
91 
92  std::vector<BadStripBlock>& getBadStripBlocks(int i) { return badStripBlocks_[i]; }
93  std::vector<BadStripBlock> const& badStripBlocks(int i) const { return badStripBlocks_[i]; }
94 
95  bool isMasked(int i, const SiStripCluster& cluster) const {
96  int offset = nbad128 * i;
97  if (bad128Strip_[offset + (cluster.firstStrip() >> 7)]) {
98  if (bad128Strip_[offset + ((cluster.firstStrip() + cluster.amplitudes().size()) >> 7)] ||
99  bad128Strip_[offset + (static_cast<int32_t>(cluster.barycenter() - 0.499999) >> 7)]) {
100  return true;
101  }
102  } else {
103  if (bad128Strip_[offset + ((cluster.firstStrip() + cluster.amplitudes().size()) >> 7)] &&
104  bad128Strip_[offset + (static_cast<int32_t>(cluster.barycenter() - 0.499999) >> 7)]) {
105  return true;
106  }
107  }
108  return false;
109  }
110 
111  void set128StripStatus(int i, bool good, int idx = -1);
112 
113 private:
115 
116  // globals
119 
122 
123  // members of TkStripMeasurementDet
124  std::vector<unsigned int> id_;
125  std::vector<unsigned char> subId_;
126 
127  std::vector<int> totalStrips_;
128 
129  static const int nbad128 = 6;
130  std::vector<bool> bad128Strip_;
131  std::vector<bool> hasAny128StripBad_;
132 
133  std::vector<std::vector<BadStripBlock>> badStripBlocks_;
134 
135  std::vector<bool> activeThisPeriod_;
136 };
137 
139 public:
142 
144  : conditionSet_(&cond),
145  empty_(cond.nDet(), true),
147  detSet_(cond.nDet()),
148  detIndex_(cond.nDet(), -1),
149  ready_(cond.nDet(), true),
151  stripDefined_(0),
152  stripUpdated_(0),
153  stripRegions_(0) {}
154 
156 
158 
159  void update(int i, const StripDetset& detSet) {
160  detSet_[i] = detSet;
161  empty_[i] = false;
162  }
163 
164  void update(int i, int j) {
165  assert(j >= 0);
166  assert(empty_[i]);
167  assert(ready_[i]);
168  detIndex_[i] = j;
169  empty_[i] = false;
170  incReady();
171  }
172 
173  int size() const { return conditions().nDet(); }
174  int nDet() const { return size(); }
175  unsigned int id(int i) const { return conditions().id(i); }
176  int find(unsigned int jd, int i = 0) const { return conditions().find(jd, i); }
177 
178  bool empty(int i) const { return empty_[i]; }
179  bool isActive(int i) const { return activeThisEvent_[i] && conditions().isActiveThisPeriod(i); }
180 
181  void setEmpty(int i) {
182  empty_[i] = true;
183  activeThisEvent_[i] = true;
184  }
185  void setUpdated(int i) { stripUpdated_[i] = true; }
186 
187  void setEmpty() {
188  printStat();
189  std::fill(empty_.begin(), empty_.end(), true);
190  std::fill(ready_.begin(), ready_.end(), true);
191  std::fill(detIndex_.begin(), detIndex_.end(), -1);
192  std::fill(activeThisEvent_.begin(), activeThisEvent_.end(), true);
193  incTot(size());
194  }
195 
198  void setActiveThisEvent(int i, bool active) {
199  activeThisEvent_[i] = active;
200  if (!active)
201  empty_[i] = true;
202  }
203 
206  // StripDetset & detSet(int i) { return detSet_[i]; }
207  const StripDetset& detSet(int i) const {
208  if (ready_[i])
209  const_cast<StMeasurementDetSet*>(this)->getDetSet(i);
210  return detSet_[i];
211  }
212 
214  std::vector<uint32_t>& rawInactiveStripDetIds() { return theRawInactiveStripDetIds_; }
215  const std::vector<uint32_t>& rawInactiveStripDetIds() const { return theRawInactiveStripDetIds_; }
216 
218  std::fill(stripDefined_.begin(), stripDefined_.end(), false);
219  std::fill(stripUpdated_.begin(), stripUpdated_.end(), false);
220  }
221  const bool stripDefined(int i) const { return stripDefined_[i]; }
222  const bool stripUpdated(int i) const { return stripUpdated_[i]; }
223  void defineStrip(int i, std::pair<unsigned int, unsigned int> range) {
224  stripDefined_[i] = true;
225  stripUpdated_[i] = false;
226  stripRegions_[i] = range;
227  }
228 
229 private:
230  void getDetSet(int i) {
231  if (detIndex_[i] >= 0) {
232  detSet_[i].set(*handle_, handle_->item(detIndex_[i]));
233  empty_[i] = false; // better be false already
234  incAct();
235  } else { // we should not be here
236  detSet_[i] = StripDetset();
237  empty_[i] = true;
238  }
239  ready_[i] = false;
240  incSet();
241  }
242 
244 
246 
247  // Globals, per-event
249 
250  std::vector<bool> empty_;
251  std::vector<bool> activeThisEvent_;
252 
253  // full reco
254  std::vector<StripDetset> detSet_;
255  std::vector<int> detIndex_;
256  std::vector<bool> ready_; // to be cleaned
257 
258  // note: not aligned to the index
259  std::vector<uint32_t> theRawInactiveStripDetIds_;
260  // keyed on si-strip index
261  std::vector<bool> stripDefined_, stripUpdated_;
262  std::vector<std::pair<unsigned int, unsigned int>> stripRegions_;
263  // keyed on glued
264  // std::vector<bool> gluedUpdated_;
265 
266 #ifdef VISTAT
267  struct Stat {
268  int totDet = 0; // all dets
269  int detReady = 0; // dets "updated"
270  int detSet = 0; // det actually set not empty
271  int detAct = 0; // det actually set with content
272  };
273 
274  mutable Stat stat;
275  void zeroStat() const { stat = Stat(); }
276  void incTot(int n) const { stat.totDet = n; }
277  void incReady() const { stat.detReady++; }
278  void incSet() const { stat.detSet++; }
279  void incAct() const { stat.detAct++; }
280  void printStat() const {
281  COUT << "VI detsets " << stat.totDet << ',' << stat.detReady << ',' << stat.detSet << ',' << stat.detAct
282  << std::endl;
283  }
284 
285 #else
286  static void zeroStat() {}
287  static void incTot(int) {}
288  static void incReady() {}
289  static void incSet() {}
290  static void incAct() {}
291  static void printStat() {}
292 #endif
293 };
294 
296 public:
298 
299  void init(int size);
300 
301  int nDet() const { return id_.size(); }
302  unsigned int id(int i) const { return id_[i]; }
303  int find(unsigned int jd, int i = 0) const { return std::lower_bound(id_.begin() + i, id_.end(), jd) - id_.begin(); }
304 
305  const PixelClusterParameterEstimator* pixelCPE() const { return theCPE; }
306  bool isActiveThisPeriod(int i) const { return activeThisPeriod_[i]; }
307 
310  void setActive(int i, bool active) { activeThisPeriod_[i] = active; }
311 
312 private:
314 
315  // Globals (not-per-event)
317 
318  // Locals, per-event
319  std::vector<unsigned int> id_;
320  std::vector<bool> activeThisPeriod_;
321 };
322 
324 public:
327  typedef std::vector<std::pair<LocalPoint, LocalPoint>> BadFEDChannelPositions;
328 
331 
333 
334  int size() const { return conditions().nDet(); }
335  int nDet() const { return size(); }
336  unsigned int id(int i) const { return conditions().id(i); }
337  int find(unsigned int jd, int i = 0) const { return conditions().find(jd, i); }
338 
339  void update(int i, const PixelDetSet& detSet) {
340  detSet_[i] = detSet;
341  empty_[i] = false;
342  }
343 
344  bool empty(int i) const { return empty_[i]; }
345  bool isActive(int i) const { return activeThisEvent_[i] && conditions().isActiveThisPeriod(i); }
346 
347  void setEmpty(int i) {
348  empty_[i] = true;
349  activeThisEvent_[i] = true;
350  auto found = badFEDChannelPositionsSet_.find(i);
351  if (found != badFEDChannelPositionsSet_.end()) {
353  }
354  }
355 
356  void setEmpty() {
357  std::fill(empty_.begin(), empty_.end(), true);
358  std::fill(activeThisEvent_.begin(), activeThisEvent_.end(), true);
360  }
361  void setActiveThisEvent(bool active) { std::fill(activeThisEvent_.begin(), activeThisEvent_.end(), active); }
362 
364  auto found = badFEDChannelPositionsSet_.find(i);
365  if (found == badFEDChannelPositionsSet_.end())
366  return nullptr;
367  return &(found->second);
368  }
370  auto found = badFEDChannelPositionsSet_.find(i);
371  if (found == badFEDChannelPositionsSet_.end()) {
372  badFEDChannelPositionsSet_.emplace(i, positions);
373  } else {
374  found->second.insert(found->second.end(), positions.begin(), positions.end());
375  }
376  }
377 
380  void setActiveThisEvent(int i, bool active) {
381  activeThisEvent_[i] = active;
382  if (!active)
383  empty_[i] = true;
384  }
387  const PixelDetSet& detSet(int i) const { return detSet_[i]; }
388 
389 private:
391 
393 
394  // Globals, per-event
396 
397  // Locals, per-event
398  std::vector<PixelDetSet> detSet_;
399  std::vector<bool> empty_;
400  std::vector<bool> activeThisEvent_;
401  std::unordered_map<int, BadFEDChannelPositions> badFEDChannelPositionsSet_;
402 };
403 
404 //FIXME:just temporary solution for phase2 OT that works!
406 public:
408 
409  void init(int size);
410 
411  int nDet() const { return id_.size(); }
412  unsigned int id(int i) const { return id_[i]; }
413  int find(unsigned int jd, int i = 0) const { return std::lower_bound(id_.begin() + i, id_.end(), jd) - id_.begin(); }
414 
416  bool isActiveThisPeriod(int i) const { return activeThisPeriod_[i]; }
417 
420  void setActive(int i, bool active) { activeThisPeriod_[i] = active; }
421 
422 private:
424 
425  // Globals (not-per-event)
427 
428  // Locals, per-event
429  std::vector<unsigned int> id_;
430  std::vector<bool> activeThisPeriod_;
431 };
432 
434 public:
437 
440 
442 
443  int size() const { return conditions().nDet(); }
444  int nDet() const { return size(); }
445  unsigned int id(int i) const { return conditions().id(i); }
446  int find(unsigned int jd, int i = 0) const { return conditions().find(jd, i); }
447 
448  void update(int i, const Phase2DetSet& detSet) {
449  detSet_[i] = detSet;
450  empty_[i] = false;
451  }
452 
453  bool empty(int i) const { return empty_[i]; }
454  bool isActive(int i) const { return activeThisEvent_[i] && conditions().isActiveThisPeriod(i); }
455 
456  void setEmpty(int i) {
457  empty_[i] = true;
458  activeThisEvent_[i] = true;
459  }
460 
461  void setEmpty() {
462  std::fill(empty_.begin(), empty_.end(), true);
463  std::fill(activeThisEvent_.begin(), activeThisEvent_.end(), true);
464  }
465  void setActiveThisEvent(bool active) { std::fill(activeThisEvent_.begin(), activeThisEvent_.end(), active); }
466  void setActiveThisEvent(int i, bool active) {
467  activeThisEvent_[i] = active;
468  if (!active)
469  empty_[i] = true;
470  }
473  const Phase2DetSet& detSet(int i) const { return detSet_[i]; }
474 
475 private:
477 
479 
480  //Globals, per-event
482 
483  // Locals, per-event
484  std::vector<Phase2DetSet> detSet_;
485  std::vector<bool> empty_;
486  std::vector<bool> activeThisEvent_;
487 };
488 
489 #endif // StMeasurementDetSet_H
PxMeasurementConditionSet
Definition: TkMeasurementDetSet.h:295
StMeasurementDetSet::handle
const edm::Handle< edmNew::DetSetVector< SiStripCluster > > & handle() const
Definition: TkMeasurementDetSet.h:205
StMeasurementConditionSet::BadStripCuts
Definition: TkMeasurementDetSet.h:48
Phase2OTMeasurementDetSet::handle_
edm::Handle< edmNew::DetSetVector< Phase2TrackerCluster1D > > handle_
Definition: TkMeasurementDetSet.h:481
PixelClusterParameterEstimator
Definition: PixelClusterParameterEstimator.h:15
FastTimerService_cff.range
range
Definition: FastTimerService_cff.py:34
Phase2OTMeasurementConditionSet::Phase2OTMeasurementConditionSet
Phase2OTMeasurementConditionSet(const ClusterParameterEstimator< Phase2TrackerCluster1D > *cpe)
Definition: TkMeasurementDetSet.h:407
PxMeasurementConditionSet::theCPE
const PixelClusterParameterEstimator * theCPE
Definition: TkMeasurementDetSet.h:316
StMeasurementDetSet::stripRegions_
std::vector< std::pair< unsigned int, unsigned int > > stripRegions_
Definition: TkMeasurementDetSet.h:262
Handle.h
StMeasurementDetSet::zeroStat
static void zeroStat()
Definition: TkMeasurementDetSet.h:286
mps_fire.i
i
Definition: mps_fire.py:355
Phase2OTMeasurementConditionSet::id_
std::vector< unsigned int > id_
Definition: TkMeasurementDetSet.h:429
SiStripCluster::barycenter
float barycenter() const
Definition: SiStripCluster.cc:23
StMeasurementConditionSet::bad128Strip
bool bad128Strip(int offset) const
note: index is 6*detector index + offset!
Definition: TkMeasurementDetSet.h:89
StMeasurementConditionSet::MaskBad128StripBlocks
Definition: TkMeasurementDetSet.h:44
dqmiodumpmetadata.n
n
Definition: dqmiodumpmetadata.py:28
StMeasurementDetSet::rawInactiveStripDetIds
const std::vector< uint32_t > & rawInactiveStripDetIds() const
Definition: TkMeasurementDetSet.h:215
PxMeasurementDetSet::empty
bool empty(int i) const
Definition: TkMeasurementDetSet.h:344
StMeasurementConditionSet::BadStripBlock
Definition: TkMeasurementDetSet.h:55
PxMeasurementDetSet::update
void update(int i, const PixelDetSet &detSet)
Definition: TkMeasurementDetSet.h:339
Phase2TrackerCluster1D
Definition: Phase2TrackerCluster1D.h:10
StMeasurementConditionSet::BadStripCuts::maxConsecutiveBad
uint16_t maxConsecutiveBad
Definition: TkMeasurementDetSet.h:52
StMeasurementDetSet::size
int size() const
Definition: TkMeasurementDetSet.h:173
Phase2OTMeasurementDetSet::conditionSet_
const Phase2OTMeasurementConditionSet * conditionSet_
Definition: TkMeasurementDetSet.h:478
StMeasurementConditionSet::BadModules
Definition: TkMeasurementDetSet.h:41
StMeasurementConditionSet::id
unsigned int id(int i) const
Definition: TkMeasurementDetSet.h:70
StMeasurementDetSet::rawInactiveStripDetIds
std::vector< uint32_t > & rawInactiveStripDetIds()
Definition: TkMeasurementDetSet.h:214
StMeasurementConditionSet::hasAny128StripBad_
std::vector< bool > hasAny128StripBad_
Definition: TkMeasurementDetSet.h:131
StMeasurementConditionSet::badStripBlocks
std::vector< BadStripBlock > const & badStripBlocks(int i) const
Definition: TkMeasurementDetSet.h:93
digitizers_cfi.strip
strip
Definition: digitizers_cfi.py:19
StMeasurementDetSet::empty_
std::vector< bool > empty_
Definition: TkMeasurementDetSet.h:250
PxMeasurementDetSet::size
int size() const
Definition: TkMeasurementDetSet.h:334
StMeasurementConditionSet
Definition: TkMeasurementDetSet.h:38
StMeasurementConditionSet::totalStrips
int totalStrips(int i) const
Definition: TkMeasurementDetSet.h:80
SiPixelCluster.h
PxMeasurementDetSet::getBadFEDChannelPositions
const BadFEDChannelPositions * getBadFEDChannelPositions(int i) const
Definition: TkMeasurementDetSet.h:363
Phase2OTMeasurementConditionSet
Definition: TkMeasurementDetSet.h:405
Phase2OTMeasurementConditionSet::theCPE
const ClusterParameterEstimator< Phase2TrackerCluster1D > * theCPE
Definition: TkMeasurementDetSet.h:426
StMeasurementConditionSet::BadStripCuts::BadStripCuts
BadStripCuts()
Definition: TkMeasurementDetSet.h:49
StMeasurementDetSet::setEmpty
void setEmpty(int i)
Definition: TkMeasurementDetSet.h:181
StMeasurementDetSet::incSet
static void incSet()
Definition: TkMeasurementDetSet.h:289
Phase2OTMeasurementDetSet::setActiveThisEvent
void setActiveThisEvent(bool active)
Definition: TkMeasurementDetSet.h:465
Phase2OTMeasurementConditionSet::init
void init(int size)
Definition: TkMeasurementDetSet.cc:42
Phase2OTMeasurementDetSet::detSet_
std::vector< Phase2DetSet > detSet_
Definition: TkMeasurementDetSet.h:484
cms::cuda::assert
assert(be >=bs)
PxMeasurementDetSet::find
int find(unsigned int jd, int i=0) const
Definition: TkMeasurementDetSet.h:337
StMeasurementConditionSet::badStripBlocks_
std::vector< std::vector< BadStripBlock > > badStripBlocks_
Definition: TkMeasurementDetSet.h:133
charmTagsComputerCvsB_cfi.idx
idx
Definition: charmTagsComputerCvsB_cfi.py:108
Phase2OTMeasurementDetSet::update
void update(int i, const Phase2DetSet &detSet)
Definition: TkMeasurementDetSet.h:448
Phase2OTMeasurementDetSet::setEmpty
void setEmpty(int i)
Definition: TkMeasurementDetSet.h:456
SiPixelCluster
Pixel cluster – collection of neighboring pixels above threshold.
Definition: SiPixelCluster.h:27
PxMeasurementDetSet::PixelDetSet
edmNew::DetSet< SiPixelCluster > PixelDetSet
Definition: TkMeasurementDetSet.h:326
StMeasurementConditionSet::totalStrips_
std::vector< int > totalStrips_
Definition: TkMeasurementDetSet.h:127
SiStripBadStrip.h
StMeasurementConditionSet::theMatcher
const SiStripRecHitMatcher * theMatcher
Definition: TkMeasurementDetSet.h:117
Phase2OTMeasurementDetSet::find
int find(unsigned int jd, int i=0) const
Definition: TkMeasurementDetSet.h:446
newFWLiteAna.found
found
Definition: newFWLiteAna.py:118
edm::Handle
Definition: AssociativeIterator.h:50
StMeasurementConditionSet::QualityFlags
QualityFlags
Definition: TkMeasurementDetSet.h:40
Phase2StripCPE
Definition: Phase2StripCPE.h:13
PxMeasurementDetSet::handle
edm::Handle< edmNew::DetSetVector< SiPixelCluster > > & handle()
Definition: TkMeasurementDetSet.h:386
StMeasurementConditionSet::find
int find(unsigned int jd, int i=0) const
Definition: TkMeasurementDetSet.h:73
edm::Ref
Definition: AssociativeIterator.h:58
StMeasurementDetSet::conditionSet_
const StMeasurementConditionSet * conditionSet_
Definition: TkMeasurementDetSet.h:245
Phase2OTMeasurementDetSet::empty_
std::vector< bool > empty_
Definition: TkMeasurementDetSet.h:485
StMeasurementConditionSet::BadStripBlock::first
short first
Definition: TkMeasurementDetSet.h:56
SiStripCluster::firstStrip
uint16_t firstStrip() const
Definition: SiStripCluster.h:38
PxMeasurementDetSet::nDet
int nDet() const
Definition: TkMeasurementDetSet.h:335
StMeasurementDetSet::detSet_
std::vector< StripDetset > detSet_
Definition: TkMeasurementDetSet.h:254
Phase2OTMeasurementDetSet
Definition: TkMeasurementDetSet.h:433
PxMeasurementConditionSet::pixelCPE
const PixelClusterParameterEstimator * pixelCPE() const
Definition: TkMeasurementDetSet.h:305
StripClusterParameterEstimator
Definition: StripClusterParameterEstimator.h:25
PxMeasurementDetSet::id
unsigned int id(int i) const
Definition: TkMeasurementDetSet.h:336
PxMeasurementDetSet::handle_
edm::Handle< edmNew::DetSetVector< SiPixelCluster > > handle_
Definition: TkMeasurementDetSet.h:395
StMeasurementDetSet::incAct
static void incAct()
Definition: TkMeasurementDetSet.h:290
Phase2OTMeasurementConditionSet::isActiveThisPeriod
bool isActiveThisPeriod(int i) const
Definition: TkMeasurementDetSet.h:416
Phase2OTMeasurementDetSet::handle
edm::Handle< edmNew::DetSetVector< Phase2TrackerCluster1D > > & handle()
Definition: TkMeasurementDetSet.h:472
Phase2OTMeasurementDetSet::detSet
const Phase2DetSet & detSet(int i) const
Definition: TkMeasurementDetSet.h:473
MeasurementTrackerImpl
Definition: MeasurementTrackerImpl.h:38
StMeasurementConditionSet::badStripCuts
const BadStripCuts & badStripCuts(int i) const
Definition: TkMeasurementDetSet.h:83
hgcalPlots.stat
stat
Definition: hgcalPlots.py:1111
StMeasurementConditionSet::badStripCuts_
BadStripCuts badStripCuts_[4]
Definition: TkMeasurementDetSet.h:121
StMeasurementConditionSet::maskBad128StripBlocks
bool maskBad128StripBlocks() const
Definition: TkMeasurementDetSet.h:85
StMeasurementConditionSet::stripCPE
const StripClusterParameterEstimator * stripCPE() const
Definition: TkMeasurementDetSet.h:67
Phase2OTMeasurementDetSet::empty
bool empty(int i) const
Definition: TkMeasurementDetSet.h:453
PxMeasurementConditionSet::id
unsigned int id(int i) const
Definition: TkMeasurementDetSet.h:302
PxMeasurementConditionSet::find
int find(unsigned int jd, int i=0) const
Definition: TkMeasurementDetSet.h:303
StMeasurementConditionSet::matcher
const SiStripRecHitMatcher * matcher() const
Definition: TkMeasurementDetSet.h:66
PxMeasurementDetSet::empty_
std::vector< bool > empty_
Definition: TkMeasurementDetSet.h:399
StMeasurementDetSet::printStat
static void printStat()
Definition: TkMeasurementDetSet.h:291
PxMeasurementConditionSet::activeThisPeriod_
std::vector< bool > activeThisPeriod_
Definition: TkMeasurementDetSet.h:320
StMeasurementConditionSet::bad128Strip_
std::vector< bool > bad128Strip_
Definition: TkMeasurementDetSet.h:130
PxMeasurementDetSet::handle
const edm::Handle< edmNew::DetSetVector< SiPixelCluster > > & handle() const
Definition: TkMeasurementDetSet.h:385
PxMeasurementDetSet::setEmpty
void setEmpty(int i)
Definition: TkMeasurementDetSet.h:347
PxMeasurementConditionSet::init
void init(int size)
Definition: TkMeasurementDetSet.cc:37
edmNew::DetSet
Definition: DetSetNew.h:22
Phase2StripCPE.h
Phase2OTMeasurementDetSet::handle
const edm::Handle< edmNew::DetSetVector< Phase2TrackerCluster1D > > & handle() const
Definition: TkMeasurementDetSet.h:471
StMeasurementConditionSet::bad128Strip
bool bad128Strip(int index, int strip) const
Definition: TkMeasurementDetSet.h:90
Phase2OTMeasurementDetSet::nDet
int nDet() const
Definition: TkMeasurementDetSet.h:444
StMeasurementConditionSet::BadStripCuts::maxBad
uint16_t maxBad
Definition: TkMeasurementDetSet.h:52
Phase2OTMeasurementDetSet::activeThisEvent_
std::vector< bool > activeThisEvent_
Definition: TkMeasurementDetSet.h:486
StMeasurementDetSet::handle_
edm::Handle< edmNew::DetSetVector< SiStripCluster > > handle_
Definition: TkMeasurementDetSet.h:248
PxMeasurementConditionSet::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:310
Phase2OTMeasurementDetSet::conditions
const Phase2OTMeasurementConditionSet & conditions() const
Definition: TkMeasurementDetSet.h:441
PxMeasurementDetSet::conditions
const PxMeasurementConditionSet & conditions() const
Definition: TkMeasurementDetSet.h:332
StMeasurementDetSet::update
void update(int i, int j)
Definition: TkMeasurementDetSet.h:164
PxMeasurementDetSet::SiPixelClusterRef
edm::Ref< edmNew::DetSetVector< SiPixelCluster >, SiPixelCluster > SiPixelClusterRef
Definition: TkMeasurementDetSet.h:325
PxMeasurementDetSet
Definition: TkMeasurementDetSet.h:323
Phase2OTMeasurementDetSet::id
unsigned int id(int i) const
Definition: TkMeasurementDetSet.h:445
StMeasurementDetSet
Definition: TkMeasurementDetSet.h:138
cuda_std::lower_bound
__host__ constexpr __device__ RandomIt lower_bound(RandomIt first, RandomIt last, const T &value, Compare comp={})
Definition: cudastdAlgorithm.h:27
ClusterParameterEstimator< Phase2TrackerCluster1D >
StMeasurementDetSet::incTot
static void incTot(int)
Definition: TkMeasurementDetSet.h:287
StMeasurementConditionSet::theCPE
const StripClusterParameterEstimator * theCPE
Definition: TkMeasurementDetSet.h:118
Phase2OTMeasurementDetSet::setActiveThisEvent
void setActiveThisEvent(int i, bool active)
Definition: TkMeasurementDetSet.h:466
StMeasurementConditionSet::BadAPVFibers
Definition: TkMeasurementDetSet.h:42
PxMeasurementDetSet::badFEDChannelPositionsSet_
std::unordered_map< int, BadFEDChannelPositions > badFEDChannelPositionsSet_
Definition: TkMeasurementDetSet.h:401
Phase2OTMeasurementDetSet::Phase2DetSet
edmNew::DetSet< Phase2TrackerCluster1D > Phase2DetSet
Definition: TkMeasurementDetSet.h:436
StMeasurementConditionSet::BadStrips
Definition: TkMeasurementDetSet.h:43
cond
Definition: plugin.cc:23
StMeasurementDetSet::stripDefined_
std::vector< bool > stripDefined_
Definition: TkMeasurementDetSet.h:261
funct::true
true
Definition: Factorize.h:173
ntuplemaker.fill
fill
Definition: ntuplemaker.py:304
TkStripMeasurementDet
Definition: TkStripMeasurementDet.h:74
StMeasurementDetSet::activeThisEvent_
std::vector< bool > activeThisEvent_
Definition: TkMeasurementDetSet.h:251
PxMeasurementDetSet::BadFEDChannelPositions
std::vector< std::pair< LocalPoint, LocalPoint > > BadFEDChannelPositions
Definition: TkMeasurementDetSet.h:327
StMeasurementConditionSet::setMaskBad128StripBlocks
void setMaskBad128StripBlocks(bool maskThem)
Definition: TkMeasurementDetSet.h:82
StMeasurementConditionSet::getBadStripBlocks
std::vector< BadStripBlock > & getBadStripBlocks(int i)
Definition: TkMeasurementDetSet.h:92
StMeasurementConditionSet::subId_
std::vector< unsigned char > subId_
Definition: TkMeasurementDetSet.h:125
StMeasurementConditionSet::activeThisPeriod_
std::vector< bool > activeThisPeriod_
Definition: TkMeasurementDetSet.h:135
SiStripCluster.h
PxMeasurementConditionSet::nDet
int nDet() const
Definition: TkMeasurementDetSet.h:301
PxMeasurementConditionSet::PxMeasurementConditionSet
PxMeasurementConditionSet(const PixelClusterParameterEstimator *cpe)
Definition: TkMeasurementDetSet.h:297
StMeasurementConditionSet::hasAny128StripBad
bool hasAny128StripBad(int i) const
Definition: TkMeasurementDetSet.h:86
Phase2OTMeasurementDetSet::Phase2OTMeasurementDetSet
Phase2OTMeasurementDetSet(const Phase2OTMeasurementConditionSet &cond)
Definition: TkMeasurementDetSet.h:438
StMeasurementDetSet::detIndex_
std::vector< int > detIndex_
Definition: TkMeasurementDetSet.h:255
StMeasurementConditionSet::BadStripBlock::BadStripBlock
BadStripBlock(const SiStripBadStrip::data &data)
Definition: TkMeasurementDetSet.h:58
SiStripCluster::amplitudes
const std::vector< uint8_t > & amplitudes() const
Definition: SiStripCluster.h:51
StMeasurementDetSet::stripUpdated_
std::vector< bool > stripUpdated_
Definition: TkMeasurementDetSet.h:261
Phase2OTMeasurementDetSet::Phase2TrackerCluster1DRef
edm::Ref< edmNew::DetSetVector< Phase2TrackerCluster1D >, Phase2TrackerCluster1D > Phase2TrackerCluster1DRef
Definition: TkMeasurementDetSet.h:435
StMeasurementDetSet::defineStrip
void defineStrip(int i, std::pair< unsigned int, unsigned int > range)
Definition: TkMeasurementDetSet.h:223
StMeasurementDetSet::~StMeasurementDetSet
~StMeasurementDetSet()
Definition: TkMeasurementDetSet.h:155
StMeasurementConditionSet::BadROCs
Definition: TkMeasurementDetSet.h:45
StMeasurementConditionSet::BadStripCuts::BadStripCuts
BadStripCuts(uint32_t iMaxBad, uint32_t iMaxConsecutiveBad)
Definition: TkMeasurementDetSet.h:50
StMeasurementDetSet::resetOnDemandStrips
void resetOnDemandStrips()
Definition: TkMeasurementDetSet.h:217
StMeasurementDetSet::theRawInactiveStripDetIds_
std::vector< uint32_t > theRawInactiveStripDetIds_
Definition: TkMeasurementDetSet.h:259
StMeasurementConditionSet::isActiveThisPeriod
bool isActiveThisPeriod(int i) const
Definition: TkMeasurementDetSet.h:75
StMeasurementConditionSet::init
void init(int size)
Definition: TkMeasurementDetSet.cc:3
StMeasurementDetSet::nDet
int nDet() const
Definition: TkMeasurementDetSet.h:174
StMeasurementDetSet::find
int find(unsigned int jd, int i=0) const
Definition: TkMeasurementDetSet.h:176
PxMeasurementDetSet::activeThisEvent_
std::vector< bool > activeThisEvent_
Definition: TkMeasurementDetSet.h:400
StMeasurementConditionSet::BadStripBlock::last
short last
Definition: TkMeasurementDetSet.h:57
StMeasurementDetSet::StMeasurementDetSet
StMeasurementDetSet(const StMeasurementConditionSet &cond)
Definition: TkMeasurementDetSet.h:143
PxMeasurementDetSet::addBadFEDChannelPositions
void addBadFEDChannelPositions(int i, BadFEDChannelPositions &positions)
Definition: TkMeasurementDetSet.h:369
StMeasurementDetSet::StripDetset
edmNew::DetSet< SiStripCluster > StripDetset
Definition: TkMeasurementDetSet.h:140
StMeasurementDetSet::ready_
std::vector< bool > ready_
Definition: TkMeasurementDetSet.h:256
PxMeasurementDetSet::conditionSet_
const PxMeasurementConditionSet * conditionSet_
Definition: TkMeasurementDetSet.h:392
StMeasurementDetSet::handle
edm::Handle< edmNew::DetSetVector< SiStripCluster > > & handle()
Definition: TkMeasurementDetSet.h:204
PxMeasurementDetSet::setActiveThisEvent
void setActiveThisEvent(int i, bool active)
Turn on/off the module for reconstruction for one events. This per-event flag is cleared by any call ...
Definition: TkMeasurementDetSet.h:380
Phase2OTMeasurementDetSet::isActive
bool isActive(int i) const
Definition: TkMeasurementDetSet.h:454
StMeasurementDetSet::new_const_iterator
StripDetset::const_iterator new_const_iterator
Definition: TkMeasurementDetSet.h:141
StMeasurementDetSet::conditions
const StMeasurementConditionSet & conditions() const
Definition: TkMeasurementDetSet.h:157
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
Phase2OTMeasurementConditionSet::cpe
const ClusterParameterEstimator< Phase2TrackerCluster1D > * cpe() const
Definition: TkMeasurementDetSet.h:415
StMeasurementDetSet::setActiveThisEvent
void setActiveThisEvent(int i, bool active)
Turn on/off the module for reconstruction for one events. This per-event flag is cleared by any call ...
Definition: TkMeasurementDetSet.h:198
StMeasurementDetSet::incReady
static void incReady()
Definition: TkMeasurementDetSet.h:288
Phase2OTMeasurementConditionSet::find
int find(unsigned int jd, int i=0) const
Definition: TkMeasurementDetSet.h:413
PxMeasurementDetSet::isActive
bool isActive(int i) const
Definition: TkMeasurementDetSet.h:345
Phase2TrackerCluster1D.h
StMeasurementConditionSet::StMeasurementConditionSet
StMeasurementConditionSet(const SiStripRecHitMatcher *matcher, const StripClusterParameterEstimator *cpe)
Definition: TkMeasurementDetSet.h:61
SiStripQuality.h
StMeasurementDetSet::stripDefined
const bool stripDefined(int i) const
Definition: TkMeasurementDetSet.h:221
PxMeasurementDetSet::detSet_
std::vector< PixelDetSet > detSet_
Definition: TkMeasurementDetSet.h:398
StMeasurementDetSet::id
unsigned int id(int i) const
Definition: TkMeasurementDetSet.h:175
PxMeasurementDetSet::PxMeasurementDetSet
PxMeasurementDetSet(const PxMeasurementConditionSet &cond)
Definition: TkMeasurementDetSet.h:329
data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
StMeasurementConditionSet::isMasked
bool isMasked(int i, const SiStripCluster &cluster) const
Definition: TkMeasurementDetSet.h:95
Phase2OTMeasurementConditionSet::activeThisPeriod_
std::vector< bool > activeThisPeriod_
Definition: TkMeasurementDetSet.h:430
Phase2OTMeasurementConditionSet::nDet
int nDet() const
Definition: TkMeasurementDetSet.h:411
StMeasurementDetSet::isActive
bool isActive(int i) const
Definition: TkMeasurementDetSet.h:179
StMeasurementDetSet::stripUpdated
const bool stripUpdated(int i) const
Definition: TkMeasurementDetSet.h:222
StMeasurementDetSet::setEmpty
void setEmpty()
Definition: TkMeasurementDetSet.h:187
PxMeasurementDetSet::setEmpty
void setEmpty()
Definition: TkMeasurementDetSet.h:356
PxMeasurementDetSet::setActiveThisEvent
void setActiveThisEvent(bool active)
Definition: TkMeasurementDetSet.h:361
StMeasurementDetSet::update
void update(int i, const StripDetset &detSet)
Definition: TkMeasurementDetSet.h:159
Phase2OTMeasurementConditionSet::id
unsigned int id(int i) const
Definition: TkMeasurementDetSet.h:412
StMeasurementDetSet::setUpdated
void setUpdated(int i)
Definition: TkMeasurementDetSet.h:185
SiStripRecHitMatcher
Definition: SiStripRecHitMatcher.h:25
StMeasurementDetSet::getDetSet
void getDetSet(int i)
Definition: TkMeasurementDetSet.h:230
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
StMeasurementConditionSet::nDet
int nDet() const
Definition: TkMeasurementDetSet.h:69
StMeasurementConditionSet::id_
std::vector< unsigned int > id_
Definition: TkMeasurementDetSet.h:124
hltrates_dqm_sourceclient-live_cfg.offset
offset
Definition: hltrates_dqm_sourceclient-live_cfg.py:82
COUT
#define COUT
Definition: TkMeasurementDetSet.h:31
StMeasurementDetSet::empty
bool empty(int i) const
Definition: TkMeasurementDetSet.h:178
StMeasurementConditionSet::nbad128
static const int nbad128
Definition: TkMeasurementDetSet.h:129
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
PxMeasurementConditionSet::isActiveThisPeriod
bool isActiveThisPeriod(int i) const
Definition: TkMeasurementDetSet.h:306
StMeasurementDetSet::detSet
const StripDetset & detSet(int i) const
Definition: TkMeasurementDetSet.h:207
SiStripCluster
Definition: SiStripCluster.h:9
PxMeasurementDetSet::detSet
const PixelDetSet & detSet(int i) const
Definition: TkMeasurementDetSet.h:387
DetSetVectorNew.h
Phase2OTMeasurementDetSet::size
int size() const
Definition: TkMeasurementDetSet.h:443
Phase2OTMeasurementConditionSet::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:420
TkPixelMeasurementDet
Definition: TkPixelMeasurementDet.h:17
SiStripBadStrip::data
Definition: SiStripBadStrip.h:32
findQualityFiles.size
size
Write out results.
Definition: findQualityFiles.py:443
Phase2OTMeasurementDetSet::setEmpty
void setEmpty()
Definition: TkMeasurementDetSet.h:461
StMeasurementConditionSet::maskBad128StripBlocks_
bool maskBad128StripBlocks_
Definition: TkMeasurementDetSet.h:120
StMeasurementConditionSet::subId
unsigned char subId(int i) const
Definition: TkMeasurementDetSet.h:71
edmNew::DetSet::const_iterator
const data_type * const_iterator
Definition: DetSetNew.h:31