20 else if (size<=0)
size_=0;
33 for (
int i=0; ok &&
i<nSamples &&
i+firstSample<
size_;
i++) {
34 if (
data_[
i+firstSample].er() || !
data_[
i+firstSample].dv()) ok=
false;
36 if (capid!=
data_[
i+firstSample].capid()) ok=
false;
51 return (val==0)?(-1000):(((val&0x8)==0)?(-(val&0x7)):(val&0x7));
64 s << digi.
id() <<
" " << digi.
size() <<
" samples " << digi.
presamples() <<
" presamples ";
72 for (
int i=0;
i<digi.
size();
i++)
73 s <<
" " << digi.
sample(
i) << std::endl;
bool zsUnsuppressed() const
was ZS unsuppressed?
static const int MAXSAMPLES
bool zsMarkAndPass() const
was ZS MarkAndPass?
int size() const
total number of samples in the digi
std::ostream & operator<<(std::ostream &out, const ALILine &li)
void setReadoutIds(const HcalElectronicsId &eid)
void setPresamples(int ps)
void setFiberIdleOffset(int offset)
HcalElectronicsId electronicsId_
bool validate(int firstSample=0, int nSamples=100) const
validate appropriate DV and ER bits as well as capid rotation for the specified samples (default is a...
HcalQIESample data_[MAXSAMPLES]
constexpr size_t nSamples
int presamples() const
number of samples before the sample from the triggered beam crossing (according to the hardware) ...
int fiberIdleOffset() const
offset of bunch number for this channel relative to nominal set in the unpacker (range is +7->-7...
int capid() const
get the Capacitor id
const HcalQIESample & sample(int i) const
access a sample
const HcalDetId & id() const
void setZSInfo(bool unsuppressed, bool markAndPass, uint32_t crossingMask=0)
Readout chain identification for Hcal.
tuple size
Write out results.