12 :
_zs(zs), _apv(-1), _nstrips(0), _median(-1), _detid() {
24 std::vector<unsigned int>
charge;
25 for (std::vector<SiStripDigi>::const_iterator digi = digis.begin(); digi != digis.end(); ++digi) {
26 if (!
_zs || digi->adc() > 0) {
28 _apv = digi->strip() / 128;
29 if (oldapv >= 0 && oldapv !=
_apv)
30 throw cms::Exception(
"WrongDigiVector") <<
"Digis from Different APVs";
32 charge.push_back(digi->adc());
39 std::sort(charge.begin(), charge.end());
40 std::reverse(charge.begin(), charge.end());
42 if (charge.size() > 64) {
static const int _threshold
constexpr uint32_t rawId() const
get the raw id
const unsigned int detId() const
const int apvNumber() const
void computeShot(const std::vector< SiStripDigi > &digis, const DetId &detid, const bool zs=true)
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
const float median() const
const bool isGenuine() const
const int nStrips() const
_zs(iConfig.getUntrackedParameter< bool >("zeroSuppressed", true))