CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Functions
sistrip::SpyUtilities Namespace Reference

Classes

struct  Frame
 
struct  FrameQuality
 

Functions

const uint8_t extractAPVaddress (const Frame &aFrame)
 
const Frame extractFrameInfo (const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, bool aPrintDebug=false)
 
void fedIndex (uint32_t aFedIndex, uint16_t &aFedId, uint16_t &aFedChannel)
 
void fillFEDMajorities (const std::map< uint32_t, uint32_t > &channelValues, std::vector< uint32_t > &fedMajoritiesToFill)
 
const std::pair< uint8_t, uint8_t > findAPVAddresses (const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, const uint16_t threshold, const uint16_t aFirstBits)
 
const std::pair< bool, bool > findAPVErrorBits (const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, const uint16_t threshold, const uint16_t aFirstBits)
 
const uint16_t findHeaderBits (const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, const uint16_t threshold)
 
std::pair< uint16_t, uint32_t > findMajorityValue (std::vector< uint16_t > &values, const uint16_t aFedId=0)
 
const uint16_t findTrailerBits (const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, const uint16_t threshold)
 
void getMajorityHeader (const edm::DetSetVector< SiStripRawDigi > *aInputDigis, uint16_t &firstHeaderBit, bool printResult=true)
 
const bool isValid (const Frame &aFrame, const FrameQuality &aQuality, const uint16_t aExpectedPos)
 
std::string print (const Frame &aFrame, std::string aErr)
 
const uint16_t range (const Frame &aFrame)
 
const uint16_t threshold (const Frame &aFrame)
 

Function Documentation

const uint8_t sistrip::SpyUtilities::extractAPVaddress ( const Frame &  aFrame)

Definition at line 87 of file SiStripSpyUtilities.cc.

References sistrip::SpyUtilities::Frame::apvAddress, and sistrip::SpyUtilities::Frame::apvErrorBit.

87  {
88  if (aFrame.apvErrorBit.first == false)
89  return aFrame.apvAddress.first;
90  else if (aFrame.apvErrorBit.second == false) {
91  return aFrame.apvAddress.second;
92  } else {
93  return 0;
94  }
95  }
const SpyUtilities::Frame sistrip::SpyUtilities::extractFrameInfo ( const edm::DetSetVector< SiStripRawDigi >::detset &  channelDigis,
bool  aPrintDebug = false 
)

Definition at line 11 of file SiStripSpyUtilities.cc.

References sistrip::SpyUtilities::Frame::apvAddress, sistrip::SpyUtilities::Frame::apvErrorBit, sistrip::SpyUtilities::Frame::baseline, edm::DetSet< T >::begin(), sistrip::SpyUtilities::Frame::detId, edm::DetSet< T >::detId(), sistrip::SpyUtilities::Frame::digitalHigh, sistrip::SpyUtilities::Frame::digitalLow, edm::DetSet< T >::empty(), edm::DetSet< T >::end(), findAPVAddresses(), findAPVErrorBits(), findHeaderBits(), findTrailerBits(), sistrip::SpyUtilities::Frame::firstHeaderBit, sistrip::SpyUtilities::Frame::firstTrailerBit, edm::isDebugEnabled(), LogDebug, SiStripPI::max, min(), edm::DetSet< T >::size(), dtDQMClient_cfg::threshold, and hgcalPerformanceValidation::val.

Referenced by SiStripSpyMonitorModule::analyze(), sistrip::SpyDigiConverter::extractPayloadDigis(), and getMajorityHeader().

12  {
13  SpyUtilities::Frame lFrame;
14  lFrame.detId = channelDigis.detId();
15  lFrame.firstHeaderBit = 0;
16  lFrame.firstTrailerBit = 0;
17  lFrame.digitalLow = 0;
18  lFrame.digitalHigh = 0;
19  lFrame.baseline = 0;
20  lFrame.apvErrorBit.first = false;
21  lFrame.apvErrorBit.second = false;
22  lFrame.apvAddress.first = 0;
23  lFrame.apvAddress.second = 0;
24 
25  uint16_t min = 0x3FF;
26  uint16_t max = 0;
28  const edm::DetSetVector<SiStripRawDigi>::detset::const_iterator endChannelDigis = channelDigis.end();
29 
30  //counters for outputting warnings
31  uint16_t numzeroes = 0, numsats = 0;
32 
33  if (iDigi == endChannelDigis)
34  return lFrame;
35 
36  for (; iDigi != endChannelDigis; ++iDigi) {
37  const uint16_t val = iDigi->adc();
38  if (val < min)
39  min = val;
40  if (val > max)
41  max = val;
42  if (val == 0)
43  numzeroes++;
44  if (val == 0x3FF)
45  numsats++;
46  lFrame.baseline += val;
47  }
48 
49  if (!channelDigis.empty())
50  lFrame.baseline = lFrame.baseline / channelDigis.size();
51  lFrame.digitalLow = min;
52  lFrame.digitalHigh = max;
53 
54  const uint16_t threshold = static_cast<uint16_t>((2.0 * static_cast<double>(max - min)) / 3.0);
55 
56  if (aPrintDebug) {
57  if (edm::isDebugEnabled()) {
58  LogDebug("SiStripSpyUtilities") << "Channel with key: " << lFrame.detId << " Min: " << min << " Max: " << max
59  << " Range: " << (max - min) << " Threshold: " << threshold;
60  }
61  if (numzeroes > 0 || numsats > 0) {
62  edm::LogWarning("SiStripSpyUtilities") << "Channel with key: " << lFrame.detId << " has " << numzeroes
63  << " zero and " << numsats << " saturated samples.";
64  }
65  }
66 
67  lFrame.firstHeaderBit = findHeaderBits(channelDigis, threshold);
68  lFrame.firstTrailerBit = findTrailerBits(channelDigis, threshold);
69 
70  lFrame.apvErrorBit = findAPVErrorBits(channelDigis, threshold, lFrame.firstHeaderBit);
71  lFrame.apvAddress = findAPVAddresses(channelDigis, threshold, lFrame.firstHeaderBit);
72 
73  return lFrame;
74  }
iterator end()
Definition: DetSet.h:58
const uint16_t findHeaderBits(const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, const uint16_t threshold)
bool isDebugEnabled()
det_id_type detId() const
Definition: DetSet.h:74
SOAFrame< float > Frame
size_type size() const
Definition: DetSet.h:61
T min(T a, T b)
Definition: MathUtil.h:58
iterator begin()
Definition: DetSet.h:57
const std::pair< bool, bool > findAPVErrorBits(const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, const uint16_t threshold, const uint16_t aFirstBits)
bool empty() const
Definition: DetSet.h:62
Log< level::Warning, false > LogWarning
collection_type::const_iterator const_iterator
Definition: DetSet.h:31
const uint16_t findTrailerBits(const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, const uint16_t threshold)
const std::pair< uint8_t, uint8_t > findAPVAddresses(const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, const uint16_t threshold, const uint16_t aFirstBits)
#define LogDebug(id)
void sistrip::SpyUtilities::fedIndex ( uint32_t  aFedIndex,
uint16_t &  aFedId,
uint16_t &  aFedChannel 
)

Definition at line 300 of file SiStripSpyUtilities.cc.

References sistrip::FED_ID_MAX, sistrip::FEDCH_PER_FED, and sistrip::invalid_.

Referenced by sistrip::SpyEventMatcher::mergeMatchingData(), sistrip::SpyDigiConverter::mergeModuleChannels(), Phase2Tracker::Phase2TrackerCommissioningDigiProducer::produce(), Phase2Tracker::Phase2TrackerDigiProducer::produce(), and sistrip::FEDEmulatorModule::produce().

300  {
301  //find the corresponding detId (for the pedestals)
302  aFedId = static_cast<uint16_t>(aFedIndex / sistrip::FEDCH_PER_FED);
303  aFedChannel = static_cast<uint16_t>(aFedIndex % sistrip::FEDCH_PER_FED);
304 
305  if (aFedId < sistrip::FED_ID_MIN || aFedId > sistrip::FED_ID_MAX || aFedChannel >= sistrip::FEDCH_PER_FED) {
306  aFedId = sistrip::invalid_;
307  aFedChannel = sistrip::invalid_;
308  }
309  }
static const uint16_t invalid_
Definition: Constants.h:16
static const uint16_t FEDCH_PER_FED
static const uint16_t FED_ID_MAX
void sistrip::SpyUtilities::fillFEDMajorities ( const std::map< uint32_t, uint32_t > &  channelValues,
std::vector< uint32_t > &  fedMajoritiesToFill 
)

Definition at line 341 of file SiStripSpyUtilities.cc.

References sistrip::FED_ID_MAX, sistrip::FED_ID_MIN, sistrip::FEDCH_PER_FED, and findMajorityValue().

Referenced by sistrip::SpyEventMatcher::getCounters().

342  {
343  std::map<uint32_t, uint32_t>::const_iterator lMapIter = channelValues.begin();
344  uint16_t lPreviousFedId = 0;
345  std::vector<uint16_t> lAddrVec;
346  lAddrVec.reserve(sistrip::FEDCH_PER_FED);
347  fedMajoritiesToFill.resize(sistrip::FED_ID_MAX - sistrip::FED_ID_MIN + 1, 0);
348  uint32_t lChCount = 0;
349 
350  for (; lMapIter != channelValues.end(); ++lMapIter, ++lChCount) {
351  uint16_t lFedId = static_cast<uint16_t>(lMapIter->first / sistrip::FEDCH_PER_FED);
352 
353  if (lPreviousFedId == 0) {
354  lPreviousFedId = lFedId;
355  }
356  if (lFedId == lPreviousFedId) {
357  lAddrVec.push_back(lMapIter->second);
358  }
359  if (lFedId != lPreviousFedId || (lChCount == channelValues.size() - 1)) {
360  //extract majority address
361 
362  uint32_t lMaj = sistrip::SpyUtilities::findMajorityValue(lAddrVec, lPreviousFedId).first;
363  fedMajoritiesToFill[lPreviousFedId] = lMaj;
364 
365  lAddrVec.clear();
366 
367  //if new fed, fill the first channel
368  if (lFedId != lPreviousFedId) {
369  lAddrVec.push_back(lMapIter->second);
370  lPreviousFedId = lFedId;
371  }
372  }
373  }
374  }
static const uint16_t FED_ID_MIN
std::pair< uint16_t, uint32_t > findMajorityValue(std::vector< uint16_t > &values, const uint16_t aFedId=0)
static const uint16_t FEDCH_PER_FED
static const uint16_t FED_ID_MAX
const std::pair< uint8_t, uint8_t > sistrip::SpyUtilities::findAPVAddresses ( const edm::DetSetVector< SiStripRawDigi >::detset &  channelDigis,
const uint16_t  threshold,
const uint16_t  aFirstBits 
)

Definition at line 250 of file SiStripSpyUtilities.cc.

References edm::DetSet< T >::begin(), submitPVResolutionJobs::count, edm::DetSet< T >::end(), mps_fire::i, sistrip::SPY_SAMPLES_PER_CHANNEL, and dtDQMClient_cfg::threshold.

Referenced by extractFrameInfo().

253  {
254  // Loop over digis looking for firstHeader+6
255  uint16_t count = aFirstBits + 6;
256  std::pair<uint8_t, uint8_t> lPair = std::pair<uint8_t, uint8_t>(0, 0);
257 
258  //check enough room to have 16 values....
259  if (count >= sistrip::SPY_SAMPLES_PER_CHANNEL - 15)
260  return lPair;
261 
263  const edm::DetSetVector<SiStripRawDigi>::detset::const_iterator endChannelDigis = channelDigis.end();
264 
265  //double check....
266  if (iDigi == endChannelDigis)
267  return lPair;
268 
269  for (uint8_t i = 0; i < 16; ++i) {
270  if (iDigi->adc() > threshold) {
271  //data is MSB first
272  if (i % 2 == 0)
273  lPair.first |= (0x80 >> static_cast<uint8_t>(i / 2));
274  else
275  lPair.second |= (0x80 >> static_cast<uint8_t>(i / 2));
276  }
277  ++iDigi;
278  }
279 
280  return lPair;
281  }
iterator end()
Definition: DetSet.h:58
static const uint16_t SPY_SAMPLES_PER_CHANNEL
iterator begin()
Definition: DetSet.h:57
collection_type::const_iterator const_iterator
Definition: DetSet.h:31
const std::pair< bool, bool > sistrip::SpyUtilities::findAPVErrorBits ( const edm::DetSetVector< SiStripRawDigi >::detset &  channelDigis,
const uint16_t  threshold,
const uint16_t  aFirstBits 
)

Definition at line 216 of file SiStripSpyUtilities.cc.

References edm::DetSet< T >::begin(), submitPVResolutionJobs::count, edm::DetSet< T >::end(), if(), sistrip::SPY_SAMPLES_PER_CHANNEL, and dtDQMClient_cfg::threshold.

Referenced by extractFrameInfo().

219  {
220  // Loop over digis looking for firstHeader+6+16
221  uint16_t count = aFirstBits + 22;
222 
223  std::pair<bool, bool> lPair = std::pair<bool, bool>(false, false);
224 
225  //if header invalid: we don't know what apverr is....
226  if (count >= sistrip::SPY_SAMPLES_PER_CHANNEL - 1)
227  return lPair;
228 
230  const edm::DetSetVector<SiStripRawDigi>::detset::const_iterator endChannelDigis = channelDigis.end();
231 
232  //double check....
233  if (iDigi == endChannelDigis)
234  return lPair;
235 
236  if (iDigi->adc() <= threshold)
237  lPair.first = true;
238  ++iDigi;
239 
240  //triple check...
241  if (iDigi == endChannelDigis)
242  return std::pair<bool, bool>(false, false);
243 
244  if (iDigi->adc() <= threshold)
245  lPair.second = true;
246 
247  return lPair;
248  }
iterator end()
Definition: DetSet.h:58
static const uint16_t SPY_SAMPLES_PER_CHANNEL
if(conf_.getParameter< bool >("UseStripCablingDB"))
iterator begin()
Definition: DetSet.h:57
collection_type::const_iterator const_iterator
Definition: DetSet.h:31
const uint16_t sistrip::SpyUtilities::findHeaderBits ( const edm::DetSetVector< SiStripRawDigi >::detset &  channelDigis,
const uint16_t  threshold 
)

Definition at line 147 of file SiStripSpyUtilities.cc.

References edm::DetSet< T >::begin(), submitPVResolutionJobs::count, edm::DetSet< T >::end(), sistrip::SPY_SAMPLES_PER_CHANNEL, and dtDQMClient_cfg::threshold.

Referenced by extractFrameInfo().

148  {
149  // Loop over digis looking for first above threshold
150  uint8_t aboveThreshold = 0;
151  bool foundHeader = false;
152  uint16_t count = 0;
153 
155  const edm::DetSetVector<SiStripRawDigi>::detset::const_iterator endChannelDigis = channelDigis.end();
156 
157  for (; iDigi != endChannelDigis; ++iDigi) {
158  if (iDigi->adc() > threshold) {
159  aboveThreshold++;
160  } else {
161  aboveThreshold = 0;
162  }
163  if (aboveThreshold == 6) {
164  foundHeader = true;
165  break;
166  }
167  count++;
168  } //end of loop over digis
169 
170  //break before incrementing the last time... so count-5 is the first header sample.
171  if (foundHeader && count < 5)
172  return 0;
173  if (foundHeader)
174  return count - 5;
176  }
iterator end()
Definition: DetSet.h:58
static const uint16_t SPY_SAMPLES_PER_CHANNEL
iterator begin()
Definition: DetSet.h:57
collection_type::const_iterator const_iterator
Definition: DetSet.h:31
std::pair< uint16_t, uint32_t > sistrip::SpyUtilities::findMajorityValue ( std::vector< uint16_t > &  values,
const uint16_t  aFedId = 0 
)

Definition at line 311 of file SiStripSpyUtilities.cc.

References submitPVResolutionJobs::count.

Referenced by fillFEDMajorities(), getMajorityHeader(), and sistrip::SpyDigiConverter::processFED().

311  {
312  uint32_t lTot = values.size();
313  if (!lTot)
314  return std::pair<uint16_t, uint32_t>(0, 0);
315 
316  std::sort(values.begin(), values.end());
317  uint32_t lMajorityCounter = 0;
318  uint16_t lMaj = 0;
319 
320  std::vector<uint16_t>::iterator lIter = values.begin();
321  for (; lIter != values.end();) {
322  uint32_t lCounter = std::count(lIter, values.end(), *lIter);
323  if (lCounter > lMajorityCounter) {
324  lMajorityCounter = lCounter;
325  lMaj = *lIter;
326  }
327  lIter += lCounter;
328  }
329 
330  //std::cout << " -- Found majority value " << lMaj << " for " << lMajorityCounter << " elements out of " << values.size() << "." << std::endl;
331 
332  if (static_cast<float>(lMajorityCounter) / lTot < 0.5) {
333  LogError("SiStripSpyUtilities") << " -- Found majority position for index " << aFedId << ": " << lMaj
334  << " for less than half the values : " << lMajorityCounter << " out of " << lTot
335  << " values." << std::endl;
336  }
337 
338  return std::pair<uint16_t, uint32_t>(lMaj, lMajorityCounter);
339  }
Log< level::Error, false > LogError
const uint16_t sistrip::SpyUtilities::findTrailerBits ( const edm::DetSetVector< SiStripRawDigi >::detset &  channelDigis,
const uint16_t  threshold 
)

Definition at line 178 of file SiStripSpyUtilities.cc.

References edm::DetSet< T >::begin(), submitPVResolutionJobs::count, edm::DetSet< T >::end(), sistrip::SPY_SAMPLES_PER_CHANNEL, sistrip::STRIPS_PER_FEDCH, and dtDQMClient_cfg::threshold.

Referenced by extractFrameInfo().

179  {
180  // Loop over digis looking for last above threshold
181  uint8_t aboveThreshold = 0;
182  bool foundTrailer = false;
183 
184  //discard the first 30 values, which will have some digital high in them...
185  //start searching from the expected position : sometimes after 24+256 samples,
186  //normally at 6+24+256 if 6-bit low before tickmark header bits...
187  uint16_t count = 24 + sistrip::STRIPS_PER_FEDCH;
188 
191 
193  const edm::DetSetVector<SiStripRawDigi>::detset::const_iterator endChannelDigis = channelDigis.end();
194 
195  for (; iDigi != endChannelDigis; ++iDigi) {
196  if (iDigi->adc() > threshold) {
197  aboveThreshold++;
198  } else {
199  aboveThreshold = 0;
200  }
201  if (aboveThreshold == 2) {
202  foundTrailer = true;
203  break;
204  }
205  count++;
206  } //end of loop over digis
207 
208  //break before incrementing the last time... so count-1 is the first trailer sample.
209  if (foundTrailer && count < 1)
210  return 0;
211  if (foundTrailer)
212  return count - 1;
214  }
iterator end()
Definition: DetSet.h:58
static const uint16_t SPY_SAMPLES_PER_CHANNEL
iterator begin()
Definition: DetSet.h:57
static const uint16_t STRIPS_PER_FEDCH
collection_type::const_iterator const_iterator
Definition: DetSet.h:31
void sistrip::SpyUtilities::getMajorityHeader ( const edm::DetSetVector< SiStripRawDigi > *  aInputDigis,
uint16_t &  firstHeaderBit,
bool  printResult = true 
)

Definition at line 97 of file SiStripSpyUtilities.cc.

References edm::DetSetVector< T >::begin(), edm::DetSetVector< T >::end(), extractFrameInfo(), findMajorityValue(), sistrip::SpyUtilities::Frame::firstHeaderBit, edm::DetSetVector< T >::size(), and sistrip::STRIPS_PER_FEDCH.

Referenced by SiStripSpyMonitorModule::analyze(), and sistrip::SpyDigiConverterModule::produce().

99  {
100  std::vector<uint16_t> lFirstBitVec;
101  lFirstBitVec.reserve(aInputDigis->size());
102  aFirstHeaderBit = 0;
104 
105  for (; lDigis != aInputDigis->end(); lDigis++) {
107  lFirstBitVec.push_back(lFrame.firstHeaderBit);
108  }
109 
110  std::pair<uint16_t, uint32_t> lMaj = sistrip::SpyUtilities::findMajorityValue(lFirstBitVec);
111  aFirstHeaderBit = lMaj.first;
112  uint32_t lMajorityCounter = lMaj.second;
113 
114  //header is 24-sample long (2*8+2+6)
115  uint16_t lFirstTrailerBit = aFirstHeaderBit + 24 + sistrip::STRIPS_PER_FEDCH;
116 
117  if (printResult) {
118  LogInfo("SiStripSpyUtilities") << " -- Found majority position of first header (trailer) bit: " << aFirstHeaderBit
119  << " (" << lFirstTrailerBit << ") for " << lMajorityCounter << " out of "
120  << lFirstBitVec.size() << " channels." << std::endl;
121  }
122  }
const Frame extractFrameInfo(const edm::DetSetVector< SiStripRawDigi >::detset &channelDigis, bool aPrintDebug=false)
std::pair< uint16_t, uint32_t > findMajorityValue(std::vector< uint16_t > &values, const uint16_t aFedId=0)
iterator end()
Return the off-the-end iterator.
Definition: DetSetVector.h:325
size_type size() const
Return the number of contained DetSets.
Definition: DetSetVector.h:259
Log< level::Info, false > LogInfo
static const uint16_t STRIPS_PER_FEDCH
iterator begin()
Return an iterator to the first DetSet.
Definition: DetSetVector.h:314
collection_type::const_iterator const_iterator
Definition: DetSetVector.h:102
const bool sistrip::SpyUtilities::isValid ( const Frame &  aFrame,
const FrameQuality &  aQuality,
const uint16_t  aExpectedPos 
)

Definition at line 124 of file SiStripSpyUtilities.cc.

References sistrip::SpyUtilities::Frame::apvErrorBit, sistrip::SpyUtilities::Frame::digitalHigh, sistrip::SpyUtilities::Frame::digitalLow, sistrip::SpyUtilities::Frame::firstHeaderBit, sistrip::SpyUtilities::Frame::firstTrailerBit, sistrip::SpyUtilities::FrameQuality::maxDigiRange, sistrip::SpyUtilities::FrameQuality::maxTickHeight, sistrip::SpyUtilities::FrameQuality::maxZeroLight, sistrip::SpyUtilities::FrameQuality::minTickHeight, sistrip::SpyUtilities::FrameQuality::minZeroLight, range(), and sistrip::STRIPS_PER_FEDCH.

Referenced by CosmicTrajectoryBuilder::AddHit(), MillePedeAlignmentAlgorithm::addLasBeam(), QcdPhotonsDQM::analyze(), SiPixelTrackResidualSource::analyze(), EnergyScaleAnalyzer::analyze(), TestHits::analyze(), TestSmoothHits::analyze(), HitEff::analyze(), PrimaryVertexValidation::analyze(), IsolatedTracksNxN::analyze(), CSCAnodeLCTProcessor::bestTrackSelector(), ctfseeding::HitExtractorSTRP::cleanedOfClusters(), dqmoffline::l1t::L1TDiffHarvesting::L1TDiffPlotHandler::computeDiff(), convert_boolean(), CSCGEMMotherboard::correlateLCTsGEM(), SignedImpactParameter3D::distanceWithJetAxis(), LMFUnique::dump(), ProvenanceDumper::dumpParameterSetForID_(), TwoBodyDecayEstimator::estimate(), sistrip::SpyDigiConverter::extractPayloadDigis(), PropagateToMuon::extrapolate(), hltriggeroffline::PropagateToMuon::extrapolate(), LMFDat::fetch(), GlobalRecHitsAnalyzer::fillHCal(), GlobalRecHitsProducer::fillHCal(), NuclearInteractionFinder::fillSeeds(), edm::WrapperBase::fillView(), CSCDigiValidator::filter(), KinematicParticleVertexFitter::fit(), CSCAnodeLCTProcessor::getALCTs(), QuickTrackAssociatorByHitsImpl::getAllSimTrackIdentifiers(), CSCCathodeLCTProcessor::getCLCTs(), PSFitter::HybridMinimizer::GetMinosError(), LCTContainer::getTimeMatched(), NuclearTrackCorrector::getTrackFromTrajectory(), ctfseeding::HitExtractorPIX::hits(), CRackTrajectoryBuilder::innerState(), edm::PtrVectorBase::isAvailable(), CSCAnodeLCTProcessor::lctSearch(), EcalSensitiveDetectorBuilder::make(), HGCSensitiveDetectorBuilder::make(), Trajectory::ndof(), fwlite::Run::operator bool(), fwlite::LuminosityBlock::operator bool(), fwlite::Event::operator bool(), TransientVertex::operator reco::Vertex(), TransientVertex::operator reco::VertexCompositePtrCandidate(), CachingVertex< N >::operator TransientVertex(), TSGFromPropagation::isInvalid::operator()(), FastTSGFromPropagation::isInvalid::operator()(), CSCALCTPreTriggerDigi::operator==(), CSCALCTPreTriggerDigi::print(), gen.LHEWeightAnalyzer.LHEWeightAnalyzer::process(), RecHitProcessor::process(), objects.VertexAnalyzer.VertexAnalyzer::process(), cscdqm::EventProcessor::processCSC(), RecHitProcessor::processLook(), LowPtGsfElectronSCProducer::produce(), TrackListMerger::produce(), L1Comparator::produce(), TauSpinnerCMS::produce(), CSCDCCUnpacker::produce(), HLTRechitInRegionsProducer< T1 >::produce(), reco::Conversion::refittedPair4Momentum(), reco::Conversion::refittedPairMomentum(), CSCCathodeLCTProcessor::run(), CRackTrajectoryBuilder::run(), CSCMotherboard::selectLCTs(), DynamicTruncation::testCSCstation(), DynamicTruncation::testDTstation(), TwoBodyDecayTrajectoryFactory::trajectories(), CosmicMuonTrajectoryBuilder::trajectories(), and vertexAtState().

126  {
127  uint16_t lRange = sistrip::SpyUtilities::range(aFrame);
128 
129  if (lRange < aQuality.minDigiRange || lRange > aQuality.maxDigiRange) {
130  return false;
131  } else if (aFrame.digitalLow < aQuality.minZeroLight || aFrame.digitalLow > aQuality.maxZeroLight) {
132  return false;
133  } else if (aFrame.digitalHigh < aQuality.minTickHeight || aFrame.digitalHigh > aQuality.maxTickHeight) {
134  return false;
135  }
136  //if expectedPos=0: return true whatever the position of header is...
137  else if (aExpectedPos > 0 && (!(aFrame.firstHeaderBit == aExpectedPos &&
138  aFrame.firstTrailerBit == aExpectedPos + 24 + sistrip::STRIPS_PER_FEDCH))) {
139  return false;
140  } else if (aFrame.apvErrorBit.first && aFrame.apvErrorBit.second) {
141  return false;
142  }
143 
144  return true;
145  }
const uint16_t range(const Frame &aFrame)
static const uint16_t STRIPS_PER_FEDCH
std::string sistrip::SpyUtilities::print ( const Frame &  aFrame,
std::string  aErr 
)

Definition at line 283 of file SiStripSpyUtilities.cc.

References sistrip::SpyUtilities::Frame::apvAddress, sistrip::SpyUtilities::Frame::apvErrorBit, sistrip::SpyUtilities::Frame::baseline, sistrip::SpyUtilities::Frame::detId, sistrip::SpyUtilities::Frame::digitalHigh, sistrip::SpyUtilities::Frame::digitalLow, sistrip::SpyUtilities::Frame::firstHeaderBit, and sistrip::SpyUtilities::Frame::firstTrailerBit.

283  {
284  std::ostringstream lOs;
285  lOs << " ------------------------------------------------------" << std::endl
286  << " -- Error: " << aErr << std::endl
287  << " ------- Printing Frame for detId " << aFrame.detId << " --------" << std::endl
288  << " -- firstHeaderBit = " << aFrame.firstHeaderBit << std::endl
289  << " -- firstTrailerBit = " << aFrame.firstTrailerBit << std::endl
290  << " -- digitalLow = " << aFrame.digitalLow << std::endl
291  << " -- digitalHigh = " << aFrame.digitalHigh << std::endl
292  << " -- baseline = " << aFrame.baseline << std::endl
293  << " -- apvErrorBits = " << aFrame.apvErrorBit.first << " " << aFrame.apvErrorBit.second << std::endl
294  << " -- apvAddresses = " << static_cast<uint16_t>(aFrame.apvAddress.first) << " "
295  << static_cast<uint16_t>(aFrame.apvAddress.second) << std::endl
296  << " ------------------------------------------------------" << std::endl;
297  return lOs.str();
298  }
const uint16_t sistrip::SpyUtilities::range ( const Frame &  aFrame)

Definition at line 76 of file SiStripSpyUtilities.cc.

References sistrip::SpyUtilities::Frame::digitalHigh, and sistrip::SpyUtilities::Frame::digitalLow.

Referenced by counter.Counter::__add__(), python.rootplot.utilities.Hist::__add__(), plotscripts.SawTeethFunction::__call__(), trackingPlots.TrackingIterationOrder::__call__(), dataset.Dataset::__chunks(), InefficientDoubleROC.InefficientDeadROCs::__customMedianFilter(), PhaseITreeProducer.ModuleLvlValuesReader::__del__(), TH2PolyOfflineMaps.TH2PolyOfflineMaps::__del__(), InefficientDoubleROC.InefficientDeadROCs::__determineBarrelDColInefficiencyAndNoise(), InefficientDoubleROC.InefficientDeadROCs::__determineEndcapDColInefficiencyAndNoise(), BeautifulSoup.Tag::__eq__(), PhaseITreeProducer.ModuleLvlValuesReader::__GetBarrelSector(), TH2PolyOfflineMaps.TH2PolyOfflineMaps::__GetBarrelSector(), InefficientDoubleROC.InefficientDeadROCs::__getPixelArrWithRemovedDrops(), InefficientDoubleROC.InefficientDeadROCs::__getROCData(), python.rootplot.utilities.Hist::__init_TGraph(), ntupleDataFormat._Collection::__iter__(), python.cmstools.EventTree::__iter__(), ntupleDataFormat.TrackingNtuple::__iter__(), InefficientDoubleROC.InefficientDeadROCs::__lmsExp(), InefficientDoubleROC.InefficientDeadROCs::__lmsLin(), InefficientDoubleROC.InefficientDeadROCs::__normalizeArray(), BeautifulSoup.Tag::__setitem__(), InefficientDoubleROC.InefficientDeadROCs::__setNormalizedArrayZeroInThePoint(), python.rootplot.utilities.Hist::__sub__(), trigTools::_addEventContent(), trackingPlots.TimePerEventPlot::_create(), tkal_create_file_lists.FileListCreator::_create_json_file(), python.ParticleDecayDrawer.ParticleDecayDrawer::_decay(), data_formats::_dicts_to_orm_objects(), validation::_doPlotsForPlotter(), plotting::_drawFrame(), BeautifulSoup.UnicodeDammit::_ebcdic_to_ascii(), trackingPlots.TrackingIterationOrder::_findOrder(), plotting::_getXmax(), plotting::_getXmin(), plotting::_getYmax(), plotting::_getYmaxWithError(), plotting::_getYmin(), plotting::_getYminIgnoreOutlier(), plotting::_getYminMaxAroundMedian(), python.ParticleDecayDrawer.ParticleDecayDrawer::_hasValidDaughters(), plotting::_mergeBinLabelsX(), plotting::_mergeBinLabelsY(), data_formats::_objects_to_dicts(), BeautifulSoup.BeautifulStoneSoup::_popToTag(), BeautifulSoup.BeautifulStoneSoup::_smartPop(), plotting::_th1RemoveEmptyBins(), plotting::_th1ToOrderedDict(), plotting::_th2RemoveEmptyBins(), data_formats::_to_datatables(), utils.Chi2::absval(), plot_hgcal_utils::acustompalette(), CastorChannelCoder::adc(), HcalQIECoder::adc(), CastorQIECoder::adc(), SiStripQuality::add(), python.rootplot.rootmath::add(), SiStripConfigDb::addAnalysisDescriptions(), l1GtPatternGenerator_cfi::addBlock(), SiStripConfigDb::addDeviceDescriptions(), SiStripConfigDb::addFedConnections(), SiStripConfigDb::addFedDescriptions(), RemoveAddSevLevel::AddFlag(), helperFunctions::addIndex(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties::addIntermediateMETs(), SiStripQuality::addInvalidConnectionFromCabling(), edm::DataMixingMuonWorker::addMuonPileups(), edm::DataMixingMuonWorker::addMuonSignals(), SiStripQuality::addNotConnectedConnectionFromCabling(), edm::Event::addToGotBranchIDs(), SiStripThreshold::addToStat(), ttFullHadEvtBuilder_cff::addTtFullHadHypotheses(), ttSemiLepEvtBuilder_cff::addTtSemiLepHypotheses(), parallelization::adjust_pset(), aging::ageEcal(), SiStripHitEffFromCalibTree::algoAnalyze(), python.cmstools::all(), genutils::allDaughters(), FedTimingAlgorithm::analyse(), OptoScanAlgorithm::analyse(), GEMCoPadDigiValidation::analyze(), GEMPadDigiClusterValidation::analyze(), GEMPadDigiValidation::analyze(), GEMStripDigiValidation::analyze(), CSCCLCTDigiValidation::analyze(), CSCCLCTPreTriggerDigiValidation::analyze(), CSCALCTDigiValidation::analyze(), CSCCorrelatedLCTDigiValidation::analyze(), GEMRecHitValidation::analyze(), L1TdeGEMTPG::analyze(), SiStripBadStripReader::analyze(), CSCAFEBConnectAnalysis::analyze(), CSCAFEBThrAnalysis::analyze(), L1TdeCSCTPG::analyze(), SiStripNoisesReader::analyze(), SiStripApvGainBuilder::analyze(), SiStripThresholdReader::analyze(), SiStripPedestalsReader::analyze(), SiStripSummaryReader::analyze(), RPCDigiValid::analyze(), SiStripBadComponentsDQMServiceReader::analyze(), RPCRecHitValid::analyze(), SiStripApvGainReader::analyze(), DTVDriftSegmentCalibration::analyze(), DTSegmentsTask::analyze(), DTTTrigOffsetCalibration::analyze(), DTResidualCalibration::analyze(), GEMDAQStatusSource::analyze(), SiPixelPhase1TrackingParticleV::analyze(), SiStripApvGainBuilderFromTag::analyze(), DTVDriftCalibration::analyze(), DTEfficiencyTask::analyze(), cms::SiPixelCondObjBuilder::analyze(), SiStripMonitorQuality::analyze(), cms::SiPixelCondObjForHLTBuilder::analyze(), cms::SiPixelCondObjOfflineBuilder::analyze(), DTResolutionAnalysisTask::analyze(), DTSegmentAnalysisTask::analyze(), SiStripSpyMonitorModule::analyze(), SiStripChannelGainFromDBMiscalibrator::analyze(), DTDigiReader::analyze(), MuonDTDigis::analyze(), SiStripNoisesFromDBMiscalibrator::analyze(), DTLocalTriggerSynchTask::analyze(), SiStripBadAPVAlgorithmFromClusterOccupancy::AnalyzeOccupancy(), SiStripBadAPVandHotStripAlgorithmFromClusterOccupancy::AnalyzeOccupancy(), cmsswVersionTools.PickRelValInputFiles::apply(), data_formats::apply_function(), data_sources.json_list::as_table(), EtaMultiRangeCut::asCandidate(), MinPtCutInEtaRanges::asCandidate(), PrintLoadingPlugins::askedToLoad(), SegmentsTrackAssociator::associate(), TrackAssociatorByHitsImpl::associateSimToReco(), QuickTrackAssociatorByHitsImpl::associateTrack(), python.rootplot.utilities.Hist::av_xerr(), python.rootplot.utilities.Hist::av_yerr(), plotscripts::availableCellsCSC(), plotscripts::availableCellsDT(), badGlobalMuonTaggerFWLite.BadGlobalMuonTagger::badMuons(), python.rootplot.root2matplotlib.Hist::bar(), python.rootplot.root2matplotlib.HistStack::bar3d(), python.rootplot.root2matplotlib.Hist::barh(), python.rootplot.root2matplotlib.HistStack::barstack(), edm::service::CondorStatusService::beginPost(), CommissioningTask::HistoSet::bin(), HistogramManager::book(), JetAnalyzer_HeavyIons::bookHistograms(), HiEvtPlaneFlatten::bounds2(), python.rootplot.root2matplotlib.Hist2D::box(), DeadROC_duringRun::BPIX_list(), edm::EventPrincipal::branchIDToProductID(), FWME0DigiProxyBuilder::build(), FWCSCStripDigiProxyBuilder::build(), FWRPCDigiProxyBuilder::build(), FWCSCWireDigiProxyBuilder::build(), FWGEMDigiProxyBuilder::build(), CSCSegmentBuilder::build(), FWTrackingParticleProxyBuilderFullFramework::build(), FWGEMPadDigiProxyBuilder::build(), ME0ReDigiProducer::buildDigis(), SiStripFedCablingBuilderFromDb::buildFecCablingFromDetIds(), SiStripFedCablingBuilderFromDb::buildFecCablingFromDevices(), SiStripFedCablingBuilderFromDb::buildFecCablingFromFedConnections(), FWDTDigiProxyBuilder::buildViewType(), TrackingParticleNumberOfLayers::calculate(), HGCalCLUEAlgoT< TILE >::calculateDistanceToHigher(), SiPixelGainCalibrationForHLTService::calibrate(), reco::HitPattern::call(), CastorChannelCoder::CastorChannelCoder(), CastorChannelCoder::charge(), HcalQIECoder::charge(), CastorQIECoder::charge(), CrabHelper.CrabHelper::check_crabtask(), utils.Chi2::check_filled_bins(), DisplayManager::checkDifferences(), GlobalTag::checkPrefix(), GlobalTag.GlobalTag::checkPrefix(), makeMuonMisalignmentScenario::cholesky(), edmStreamStallGrapher::chooseParser(), heppy_loop::chunks(), models::class_name_to_column(), python.rootplot.core.Options::clean_targets(), SiStripQuality::cleanUp(), SiStripConfigDb::clearAnalysisDescriptions(), SiStripConfigDb::clearDcuDetIds(), plotscripts::clearDDT(), SiStripConfigDb::clearDeviceDescriptions(), SiStripConfigDb::clearFedConnections(), SiStripConfigDb::clearFedDescriptions(), MTDThresholdClusterizer::clusterize(), compareDQMOutput::collect_and_compare_files(), electronDataDiscovery::common_search(), plotTTrigFromHistos::compare(), compareHistograms::compare_TProfile(), plotTTrigFromHistos::compareDiff(), plotT0FromHistos::compareDiff(), hcal::reconstruction::compute_coder_charge(), svgfig.Ticks::compute_logminiticks(), svgfig.Ticks::compute_logticks(), svgfig.Ticks::compute_miniticks(), svgfig.Ticks::compute_ticks(), SiPixelGainCalibScaler::computeAndStorePalyoads(), cms::config(), edmStreamStallGrapher::consolidateContiguousBlocks(), CaloTowerConstituentsMap::constituentsOf(), SymmetryFit::continuousRanges(), edmNew::copyDetSetRange(), createPayload::copyToWorkflowdir(), plotscripts::corrections2D(), SiStripCorrelateBadStripAndNoise::correlateWithNoise(), DeadROCCounter_Phase1::countBadROCBarrel(), DeadROCCounter_Phase1::countBadROCForward(), reco::HitPattern::countHits(), reco::HitPattern::countTypedHits(), pdfCreator::create(), beamerCreator::create(), vertexPlots.VertexSummaryTable::create(), plotting.Subtract::create(), plotting.Transform::create(), plotting.FakeDuplicate::create(), plotting.CutEfficiency::create(), plotting.AggregateBins::create(), plotting.ROC::create(), trackingPlots.TimePerTrackPlot::create(), plotting.Plot::create(), plotting.PlotterTableItem::create(), geometry.Alignables::create_children_list(), dataset_test::create_dataset(), compareHistograms::create_dif(), cmsHarvester::create_multicrab_config(), testtree::create_tree(), edmStreamStallGrapher::createAsciiImage(), alignmentValidation::createDirectoryStructure(), particleFlowDQM_cff::createGenJetPlots(), TkModuleGroupSelector::createModuleGroups(), edmStreamStallGrapher::createModuleTiming(), offsetAnalyzerDQM_cff::createOffsetVPSet(), edmStreamStallGrapher::createPDFImage(), plotscripts::createPeaksProfile(), histoStyle::createRatio(), histoStyle::createRatioFromGraph(), particleFlowDQM_cff::createResponsePlots(), CommonMethods::createWeightedPayloads(), CommonMethods::createWeightedPayloadsNew(), plotscripts::curvatureplot(), earlyDeleteSettings_cff::customiseEarlyDelete(), tkal_create_file_lists::das_client(), core.AutoFillTreeProducer.AutoFillTreeProducer::declareCoreVariables(), MCScenario_CRAFT1_22X::define_scenario(), StMeasurementDetSet::defineStrip(), MuonGeometrySanityCheck_cfi::detectors(), SiStripQuality::difference(), python.rootplot.core::diffpart(), MultipleCompare::Divide(), python.rootplot.utilities.Hist::divide(), utils.BinToBin::do_test(), utils.BinToBin1percent::do_test(), CSCValidation::doAFEBTiming(), SiStripPlotGain::DoAnalysis(), CSCOfflineMonitor::doBXMonitor(), CSCValidation::doCompTiming(), alignmentValidation::doCurvaturePlotsDT(), GEMOfflineMonitor::doDigiOccupancy(), alignmentValidation::doFitFunctionsPlotsCSC(), alignmentValidation::doFitFunctionsPlotsDT(), CSCValidation::doGasGain(), alignmentValidation::doMapPlotsCSC(), alignmentValidation::doMapPlotsDT(), CSCOfflineMonitor::doOccupancies(), alignmentValidation::doSegDiffPlotsCSC(), alignmentValidation::doSegDiffPlotsDT(), plotscripts::doTestsForMapPlots(), CSCValidation::doTimeMonitoring(), DTSegment2DSLPhiQuality::dqmAnalyze(), DTSegment2DQuality::dqmAnalyze(), DTSegment4DQuality::dqmAnalyze(), SiStripPopConBadComponentsHandlerFromDQM::dqmEndJob(), python.ParticleDecayDrawer.ParticleDecayDrawer::draw(), DisplayManager.DisplayManager::Draw(), trackingPlots.TrackingSeedingLayerTable::draw(), plot_utils::drawEtaValues(), plot_hgcal_utils::drawHalfEtaValues(), drawHistoAllChambers::drawHisto(), getInfo::dumpIDs(), getInfo::dumpInfo(), getInfo::dumpSNs(), ResolutionCreator::endJob(), SiStripChannelGainFromDBMiscalibrator::endJob(), SiStripNoisesFromDBMiscalibrator::endJob(), utils_v2.Chi2Test::enough_filled_bins(), EtaMultiRangeCut::EtaMultiRangeCut(), RPCPackingModule::eventRecords(), MatrixUtil::expandLsInterval(), SiStripHotStripAlgorithmFromClusterOccupancy::extractBadStrips(), fastjetglobalrhoandsigma_(), MuonShowerDigiFiller::fill(), SiStripBadComponentInfo::fillBadComponentMaps(), SiStripQuality::fillBadComponents(), SiStripPI::fillBCArrays(), core.autovars.NTupleCollection::fillBranchesScalar(), core.autovars.NTupleCollection::fillBranchesVector(), HcalObjRepresent::HcalDataContainer< Items, Item >::FillCanv(), CombinedSVComputer::fillCommonVariables(), SiPixelGainCalibrationReadDQMFile::fillDatabase(), SPYHistograms::fillDetailedHistograms(), gainCalibHelper::gainCalibPI::fillDiffAndRatio(), CSCStripElectronicsSim::fillDigis(), CSCEfficiency::fillLCT_info(), TrackDetectorAssociator::fillMuon(), GlobalDigisProducer::fillMuon(), GlobalDigisAnalyzer::fillMuon(), SiStripGain::fillNewGain(), ThroughputServiceClient::fillSummaryPlots(), gainCalibHelper::gainCalibPI::fillTheHistos(), gainCalibHelper::gainCalibPI::fillThePerModuleMap(), CSCTimingExtractor::fillTiming(), DTTimingExtractor::fillTiming(), core.AutoFillTreeProducer.AutoFillTreeProducer::fillTree(), Phase2TrackerCabling::filterByCoolingLine(), Phase2TrackerCabling::filterByPowerGroup(), commentSkipper.cppCommentSkipper::filterFile(), ExtractAppInfoFromXML::filterNodeList(), commentSkipper.buildFileCommentSkipper::filterOneLineComment(), runTauDisplay::finalDaughters(), keyFinder::find(), keyFinder::finds(), edmStreamStallGrapher::findStalledModules(), genutils::findStatus1Leptons(), presentation.PageLayout::fit(), DTMeanTimerFitter::fitTMax(), CombinedSVComputer::flipIterate(), edmNew::foreachDetSetObject(), CTPPSTotemDataFormatter::formatRawData(), CTPPSPixelDataFormatter::formatRawData(), DeadROC_duringRun::FPIX_list(), RPCPhiEff::fromRaw(), npstat::ArrayND< Numeric, StackLen, StackDim >::fullRange(), getRunInfo::Func_FillInfoRunRegistry(), generate(), models::generate(), generateGeometry.GeometryGenerator::generateGeom(), edm::IDVectorMap< ID, C, P >::get(), tkal_create_file_lists::get_chunks(), ValidationMatrix::get_filenames_from_pool(), beamvalidation::get_lastIOVs(), hcal::reconstruction::get_qiecoder_index(), directories2html::get_rank_section(), PixelMapPlotter::GetAffectedRocs(), SiStripConfigDb::getAnalysisDescriptions(), QGLikelihoodCalculator::getBinNumber(), RPCConeBuilderFromES::getConesFromES(), MultipleCompare::GetContent(), ChamberSegmentUtility::getCSCSegmentsInChamber(), AlCaHLTBitMon_QueryRunRegistry::getData(), SiStripConfigDb::getDcuDetIds(), SiStripConfigDb::getDeviceDescriptions(), QuickTrackAssociatorByHitsImpl::getDoubleCount(), ChamberSegmentUtility::getDTSegmentsInChamber(), SiStripConfigDb::getFedConnections(), SiStripConfigDb::getFedDescriptions(), MainPageGenerator::getFiles(), TkMap_script_phase1::getGT(), reco::HitPattern::getHitPattern(), SimHitsValidationHcal::getLimits(), BeamSpotWorkflow::getListOfRunsAndLumiFromDBS(), LumiList.LumiList::getLumis(), MultipleCompare::getMaximumIncludingErrors(), SiStripCorrelateBadStripAndNoise::getMeanNoise(), MultipleCompare::getMinimumIncludingErrors(), MT2Analyzer.MT2Analyzer::getMT2Hemi(), SiStripBadStripFromASCIIFile::getNewObject(), SiStripGainFromAsciiFile::getNewObject(), SiStripBadModuleByHandBuilder::getNewObject(), SiStripBadFiberBuilder::getNewObject(), SiStripBadChannelBuilder::getNewObject(), SiStripGainRandomCalculator::getNewObject(), SiStripQualityHotStripIdentifier::getNewObject(), SiStripQualityHotStripIdentifierRoot::getNewObject(), SiStripApvGainRescaler::getNewObject(), SiStripChannelGainFromDBMiscalibrator::getNewObject(), SiStripGainsPCLHarvester::getNewObject(), SiStripGainFromData::getNewObject(), SiStripHitEffFromCalibTree::getNewObject(), SiStripGainFromCalibTree::getNewObject(), DeadROCCounter::GetNonZeroOccNumber(), useReflexToDescribeForGenObject::getObjectList(), SiPixelGainForHLTonGPU::getPedAndGain(), getHLTPrescaleColumns::getPrescalesFromKey(), getHLTprescales::getPrescalesFromKey(), EcalTrigPrimESProducer::getRange(), TrackAssociatorByPositionImpl::getState(), HDQMSummary::getSummaryObj(), SiStripSummary::getSummaryObj(), helperFunctions::getTagsMap(), reco::HitPattern::getTrackerLayerCase(), reco::HitPattern::getTrackerMonoStereo(), SiStripMiscalibrate::getTruncatedRange(), querying_tests::global_tag_tests(), CachingSeedCleanerBySharedInput::good(), histoStyle::graphProducer(), GsfEleSCEtaMultiRangeCut::GsfEleSCEtaMultiRangeCut(), dqmiodatasetharvest::harvestfile(), dqmiolumiharvest::harvestfile(), overlapValidationPlot::hist(), SummaryGenerator::histo1D(), histoStyle::histoProducer(), ctfseeding::HitExtractorSTRP::hits(), MuonShowerInformationFiller::hitsFromSegments(), HLTDTActivityFilter::hltFilter(), VIDSelectorBase::id_generator(), edm::ProductResolverIndexHelper::indexToIndexAndNames(), edm::ProductResolverIndexHelper::indiciesForModulesInProcess(), QGLikelihoodCalculator.QGLikelihoodCalculator::init(), PixelToLNKAssociateFromAscii::init(), MixCollection< T >::init(), DTHitAssociator::initEvent(), MeasurementTrackerImpl::initializeStripStatus(), L1UniformTags_cfi::initL1UniformTags(), L1UniformTagsExt_cfi::initL1UniformTagsExt(), CSCGasCollisions::ionize(), utils_v2.StatisticalTest::is_empty(), utils::is_sparse(), objects.LeptonAnalyzer.LeptonAnalyzer::isFromB(), PrescaleChecker::isMonotonic(), genutils::isNotFromHadronicShower(), SiStripQuality::IsStripBad(), isValid(), SiStripCorrelateBadStripAndNoise::iterateOnBadStrips(), python.iterators::iteratorForSizedObjects(), npstat::HistoAxis::kernelScanMapper(), bookConverter::kpermutation(), genutils::lastGenCopy(), MuonNavigationSchool::linkBarrelLayers(), MuonNavigationSchool::linkEndcapLayers(), dqmdumpme::linsearch(), python.diff_provenance.difference::list_diff(), python.diffProv.difference::list_diff(), getInfo::listRuns(), TkAlMap.TkAlMap::load_geometry(), edmplugin::PluginManager::loadableFor_(), DTBtiCard::loadBTI(), HGCalDDDConstants::locateCellTrap(), looper.Looper::loop(), dqm_interfaces.DQMcommunicator::ls_url(), LzmaDec_DecodeReal(), LzmaDec_TryDummy(), rename::main(), runall::main(), checkRuns::main(), MergePCLDeadROC::main(), PCLOthers::main(), MergeOccDeadROC::main(), MergePCLFedErr::main(), BeamSpotWorkflow::main(), utils_v2.Chi2Test::make_absolute(), LA_Filler_Fitter::make_and_fit_symmchi2(), python.rootplot.core::make_html_index(), directories2html::make_summary_table(), core.autovars.NTupleCollection::makeBranchesScalar(), groupFilesInBlocks::makeJobBlock(), gen.GeneratorAnalyzer.GeneratorAnalyzer::makeMCInfo(), TMultiDimFet::MakeNormalized(), GenerateHcalLaserBadRunList::MakePair(), CastorDbHardcode::makeQIECoder(), SimpleCosmicBONSeeder_cfi::makeSimpleCosmicSeedLayers(), SiStripHitEffFromCalibTree::makeSQLite(), cmsTiming_parser::manipulate_log(), plotscripts::mapplot(), das-selected-lumis::match_in(), TrackingNtuple::matchCluster(), ntupleDataFormat.TrackingParticle::matchedSeedInfos(), ntupleDataFormat._SimHitMatchAdaptor::matchedSimHitInfos(), ntupleDataFormat.TrackingParticle::matchedTrackInfos(), ntupleDataFormat._TrackingParticleMatchAdaptor::matchedTrackingParticleInfos(), CSCDigiMatcher::matchStripsToSimTrack(), mergeLHE.DefaultLHEMerger::merge(), mergeLHE.DefaultLHEMerger::merge_init_blocks(), mergeVDriftHistosByStation::mergeHistosWheelSector(), mergeVDriftHistosByStation::mergeHistosWheelStation(), MinPtCutInEtaRanges::MinPtCutInEtaRanges(), python.diffProv.difference::module_diff(), CosmicParametersDefinerForTP::momentum(), production_tasks.MonitorJobs::monitor(), makeMuonMisalignmentScenario::mtrans(), L1TGlobalPrescalesVetosOnlineProd::newObject(), reco::HitPattern::numberOfAllHits(), reco::HitPattern::numberOfValidStripLayersWithMonoAndStereo(), python.diff_provenance.difference::onefilemodules(), TrackerDpgAnalysis::onTrack(), TrackerDpgAnalysis::onTrackAngles(), PhoSCEtaMultiRangeCut::operator()(), GsfEleSCEtaMultiRangeCut::operator()(), rpcrawtodigi::DebugDigisPrintout::operator()(), VarRangeCut< ObjType >::operator()(), CosmicTrackingParticleSelector::operator()(), SiStripNoises::operator/(), operator<<(), compare::overlay(), utils::parse_word(), l1t::TriggerMenuParser::parsePhi_Trig_LUTS(), svgfig.Poly::Path(), python.rootplot.rootmath::pathdiff(), python.rootplot.rootmath::pathdiff2(), python.rootplot.rootmath::pathdiff3(), plotscripts::phiedges2c(), DTTrigGeomUtils::phiRange(), PhoSCEtaMultiRangeCut::PhoSCEtaMultiRangeCut(), reco::HitPattern::pixelLayersWithMeasurement(), plotResiduals::plot(), plotResidualsCosmics::plot(), plotVDriftFromHistos::plot(), plotTTrigFromHistos::plot(), plotT0FromHistos::plot(), bigStructure::plot(), bigModule::plot(), timeStructure::plot(), subModule::plot(), plotResidualsPerLayer::plot(), overlapValidationPlot::plot(), python.rootplot.core::plot_hists_mpl(), PlotDMRTrends(), plotResidualsPerLayer::plotResLayer(), plotResidualsPerLayer::plotSigmaAll(), plotscripts::polynomials(), RandomServiceHelper.RandomNumberServiceHelper::populate(), ElectronLimiter::PostStepGetPhysicalInteractionLength(), ThroughputService::preGlobalBeginRun(), ConfigBuilder.ConfigBuilder::prepare_SKIM(), PixelMapPlotter.HistogramManager::prettifyCanvas(), edm::Principal::Principal(), DQMIO2histo.DQMIO::print_index(), Mpslibclass.jobdatabase::print_memdb(), SiStripBadStrip::printDebug(), SiStripPedestals::printDebug(), SiStripGain::printDebug(), ExtractAppInfoFromXML::printGrid(), ntuplePrintersDiff.TrackPrinter::printHeader(), TablePrint::PrintHLine(), TablePrint::PrintLine(), SiStripPedestals::printSummary(), SiStripGain::printSummary(), TH2PolyOfflineMaps.TH2PolyOfflineMaps::PrintTrackerMaps(), ExtractAppInfoFromXML::printXMLtree(), gen.LHEAnalyzer.LHEAnalyzer::process(), core.ProvenanceAnalyzer.ProvenanceAnalyzer::process(), RecHitProcessor::process(), python.rootplot.core::process_options(), RecHitProcessor::processLook(), DTSegment4DT0Corrector::produce(), RPCDigiMerger::produce(), DTRecHitProducer::produce(), RPCRecHitProducer::produce(), GEMDigiToRawModule::produce(), GEMRecHitProducer::produce(), SiPixelFakeGainForHLTESSource::produce(), SiPixelFakeGainOfflineESSource::produce(), SiPixelFakeGainESSource::produce(), DTRecSegment2DProducer::produce(), DTRecSegment2DExtendedProducer::produce(), DTClusterer::produce(), SimPFProducer::produce(), ME0RecHitProducer::produce(), DTTrigPhase2Prod::produce(), utils::profile2histo(), MuonForwardNavigableLayer::pushCompatibleResult(), MuonBarrelNavigableLayer::pushCompatibleResult(), PreMixingMuonWorker< CSCStripDigiCollection >::put(), edm::DataMixingMuonWorker::putMuon(), reco::castor::QieShape::QieShape(), ctfseeding::range2SeedingHits(), PDRates::RateInPD(), JetReCalibrator.JetReCalibrator::rawP4forType1MET_(), getInfo::read(), DQM.DQMReader::read_objects_dqmio(), plotBaryCentre_VS_BeamSpot::readBaryCentreAnalyzerTree(), PhaseITreeProducer.ModuleLvlValuesReader::ReadHistograms(), TH2PolyOfflineMaps.TH2PolyOfflineMaps::ReadHistograms(), InefficientDoubleROC.InefficientDeadROCs::ReadHistograms(), MatrixReader.MatrixReader::readMatrix(), lumiregperbunch::readroot(), genutils::realGenDaughters(), genutils::realGenMothers(), MuonDetLayerMeasurements::recHits(), python.rootplot.rootinfo::recurse_thru_file(), edm::ESProxyFactoryProducer::registerFactoryWithKey(), edm::EventSetupRecordDataGetter::registerLateConsumes(), edm::ESProxyFactoryProducer::registerProxies(), svgfig.Ticks::regular_miniticks(), edm::ProductResolverIndexHelper::relatedIndexes(), tools::remove_existing_object(), RemoveAddSevLevel::RemoveFlag(), TreeCrawler::removeRecursiveLoops(), PCLOthers::renderPluginBPIX(), MergePCLDeadROC::renderPluginBPIX(), MergeOccDeadROC::renderPluginBPIX(), MergePCLFedErr::renderPluginBPIX(), PCLOthers::renderPluginFPIX(), MergeOccDeadROC::renderPluginFPIX(), MergePCLDeadROC::renderPluginFPIX(), MergePCLFedErr::renderPluginFPIX(), RandomServiceHelper.RandomNumberServiceHelper::resetSeeds(), edm::ProducerBase::resolvePutIndicies(), SiStripPsuDetIdMap::retrieveDcuDeviceAddresses(), heppy_report::root2map(), addOnTests.testit::run(), showPage::run(), DTLocalTriggerTask::runSegmentAnalysis(), MatrixRunner.MatrixRunner::runTests(), edm::ProductResolverIndexHelper::sanityCheck(), SpecificationBuilder_cfi.Specification::saveAll(), histoStyle::savePlots(), python.rootplot.rootmath::scale_with_error(), KDTreeLinkerTrackEcal::searchLinks(), ntupleDataFormat.Seeds::seedsForAlgo(), plotscripts::segdiff(), plotscripts::segdiffvsphi(), plotscripts::segdiffvsphi_xalign(), plotscripts::segdiffvsphicsc(), BeamSpotWorkflow::selectFilesToProcess(), helper::set_pede_option(), SiStripCondObjBuilderFromDb::setDefaultValuesApvTiming(), ttFullHadEvtBuilder_cff::setForAllTtFullHadHypotheses(), ttFullLepEvtBuilder_cff::setForAllTtFullLepHypotheses(), ttSemiLepEvtBuilder_cff::setForAllTtSemiLepHypotheses(), TotemDAQMappingESSourceXML::setIntervalFor(), HDQMSummary::setObj(), SiStripSummary::setObj(), RawDataFEDSelector::setRange(), storeTreeInfo.TreeAnalyzer::show(), MatrixReader.MatrixReader::showRaw(), showPage.BuildViewer::showResults(), MatrixReader.MatrixReader::showWorkFlows(), edm::RootInputFileSequence::skipToItemInNewFile(), plotT0FromHistos::SLcompare(), CommonMethods::sortAndCleanBeamList(), PixelInactiveAreaFinder::InactiveAreas::spansAndLayerSets(), heppy_loop::split(), submitPVValidationJobs::split(), cmsCodeRulesChecker::splitPaths(), python.rootplot.utilities.HistStack::stackmax(), BeautifulSoup.BeautifulSoup::start_meta(), SiStripCondObjBuilderFromDb::storeTiming(), edmIntegrityCheck.IntegrityCheck::stripDuplicates(), genericValidation.ValidationWithPlotsSummaryBase::summaryitemsstring(), fwlite::Record::syncTo(), dirstructure.Comparison::tcanvas_slow(), data_sources_tests.data_sources_tests::test_check_types(), TkAlMapDesign_phase0_cfg::test_draw(), TkAlMapDesign_phase1_cfg::test_draw(), data_sources_tests.data_sources_tests::test_make_json_list(), plotscripts::testDeltaWithin5Sigma(), python.rootplot.utilities::testfile(), Mixins.testMixins::testLargeList(), python.rootplot.utilities.Hist::TH1F(), python.rootplot.utilities.Hist2D::TH2F(), python.rootplot.root2matplotlib.Hist2D::TH2F(), DTTrigGeomUtils::thetaRange(), threshold(), coreTools.RemoveMCMatching::toolCode(), reco::HitPattern::trackerLayersWithMeasurement(), reco::HitPattern::trackerLayersWithoutMeasurement(), MuonNavigableLayer::trackingRange(), geometryDiff::transpose(), root2sqlite::treetotable(), DTTrig::triggerReco(), SiStripQualityStatistics::updateAndSave(), compareDQMOutput::upload_to_gui(), SiStripConfigDb::uploadAnalysisDescriptions(), SiStripConfigDb::uploadDeviceDescriptions(), SiStripConfigDb::uploadFedConnections(), SiStripConfigDb::uploadFedDescriptions(), pat::PATObject< ObjectType >::userFloatRange(), pat::PATObject< ObjectType >::userIntRange(), web_templates::usual_validation_dataset_template(), plottingOptions.PlottingOptionsTrackSplitting::validsubdets(), VarRangeCut< ObjType >::VarRangeCut(), CosmicParametersDefinerForTP::vertex(), runTauDisplay::visibleP4(), beamvalidation::write_iovs(), beamvalidation::write_plots(), beamvalidation::write_tags(), DQMIO2histo.DQMIO::write_to_file(), presentation::writePage(), and haddnano::zeroFill().

76  {
77  if (aFrame.digitalHigh < aFrame.digitalLow)
78  return 0;
79  else
80  return aFrame.digitalHigh - aFrame.digitalLow;
81  }
const uint16_t sistrip::SpyUtilities::threshold ( const Frame &  aFrame)

Definition at line 83 of file SiStripSpyUtilities.cc.

References range().

Referenced by SiStripSpyMonitorModule::analyze().

83  {
84  return static_cast<uint16_t>((2.0 * static_cast<double>(range(aFrame))) / 3.0);
85  }
const uint16_t range(const Frame &aFrame)