CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
StripClusterizerAlgorithm.cc
Go to the documentation of this file.
2 
9 #include <string>
10 
13  uint32_t n_cache_id = es.get<SiStripNoisesRcd>().cacheIdentifier();
14  uint32_t g_cache_id = es.get<SiStripGainRcd>().cacheIdentifier();
15  uint32_t q_cache_id = es.get<SiStripQualityRcd>().cacheIdentifier();
16 
17  if(n_cache_id != noise_cache_id) {
18  es.get<SiStripNoisesRcd>().get( noiseHandle );
19  noise_cache_id = n_cache_id;
20  }
21  if(g_cache_id != gain_cache_id) {
22  es.get<SiStripGainRcd>().get( gainHandle );
23  gain_cache_id = g_cache_id;
24  }
25  if(q_cache_id != quality_cache_id) {
27  quality_cache_id = q_cache_id;
28  }
29 }
30 
31 
33 setDetId(const uint32_t id) {
34  gainRange = gainHandle->getRange(id);
35  noiseRange = noiseHandle->getRange(id);
36  qualityRange = qualityHandle->getRange(id);
37  detId = id;
38 }
39 
42 
45  : cms::Exception("Invalid Charge") {
46  std::stringstream s;
47  s << "Digi charge of " << digi.adc() << " ADC "
48  << "is out of range on strip " << digi.strip() << ". ";
49  this->append(s.str());
50 }
edm::ESHandle< SiStripQuality > qualityHandle
void clusterize_(const T &input, output_t &output)
void append(Exception const &another)
Definition: Exception.cc:203
edm::ESHandle< SiStripGain > gainHandle
SiStripQuality::Range qualityRange
edm::ESHandle< SiStripNoises > noiseHandle
const uint16_t & strip() const
Definition: SiStripDigi.h:40
A Digi for the silicon strip detector, containing both strip and adc information, and suitable for st...
Definition: SiStripDigi.h:12
virtual void setDetId(const uint32_t)
virtual void initialize(const edm::EventSetup &)
const T & get() const
Definition: EventSetup.h:55
void clusterize(const edm::DetSetVector< SiStripDigi > &, output_t &)
const uint16_t & adc() const
Definition: SiStripDigi.h:41