101 const int pos =
s_maxJems + 2 * source + sType;
117 const int pos =
s_maxJems + 2 * source + sType;
122 return (parity << 1) + overflow;
131 unsigned int map = 0;
143 const unsigned int ex,
const unsigned int ey,
144 const unsigned int et,
const int exError,
145 const int eyError,
const int etError)
182 const unsigned int ex,
const unsigned int ey,
183 const unsigned int et,
const int exError,
184 const int eyError,
const int etError)
188 const int pos =
s_maxJems + 2 * source + sType;
211 if (
energy || overflow || parity) {
319 for (
int pin = 0; pin <
s_maxJems; ++pin) {
423 std::vector<uint32_t>::const_iterator pos;
445 for (
int pin = 0; pin <
s_maxJems; ++pin) {
574 const int pos = 3 * jem + eType;
582 const int pos = 3 * (
s_maxJems + 2 * source + sType) + eType;
const boost::regex rr(r_r)
static const uint32_t s_jemMask
unsigned int hits(int slice, HitsType hType, SumType sType) const
Return hits map for given hits type and sum type.
static const uint32_t s_overflowMask
static const uint32_t s_sumTypeMask
static const int s_jemBit
static const int s_wordIdBit
static const int s_energyTypeJemBit
static const int s_sumBitsEtCrate
static const uint32_t s_errorMask
static const int s_bunchCrossingBits
static const uint32_t s_energyTypeMask
static const int s_overflowBit
static const int s_sourceBit
static const uint32_t s_etHitsMask
static const int s_sumBitsExEy
static const int s_energyTypeBit
static const int s_jemPaddingBits
static const uint32_t s_energySumMask
static const int s_jemSumBits
void setSubsums(int slice, int jem, unsigned int ex, unsigned int ey, unsigned int et, int exError, int eyError, int etError)
Store energy subsums and errors for given JEM.
static const uint32_t s_sourceMask
void setEtHits(int slice, HitsType hType, SumType sType, unsigned int map)
Store hits map for given hits type and sum type.
bool unpackUncompressed()
Unpack uncompressed data.
static const int s_sumBitsEtSys
static const int s_errorBit
static const int s_etHitsBit
static const int s_maxSums
bool unpack()
Unpack data.
bool packUncompressed()
Pack uncompressed data.
static const int s_etHitMapsBits
bool packNeutral()
Pack neutral data.
static const uint32_t s_energyJemMask
static const int s_maxJems
static const int s_sumTypeBit
static const int s_wordLength
Data word length.
unsigned int energy(int slice, int jem, EnergyType eType) const
Return energy subsum for given JEM and energy type.
void clear()
Clear all data.
static const int s_paddingBits
static const uint32_t s_wordIdMask
int index(int slice, int pos) const
bool unpackNeutral()
Unpack neutral data.
std::vector< uint32_t > m_sumsData
Energy subsums data.
int error(int slice, int jem, EnergyType eType) const
Return energy subsum error for given JEM and energy type.
void setDaqOverflow(int bit=1)
Set DAQ FIFO Overflow bit in Sub-status word.
void setGlinkParity(int bit=1)
Set G-Link Parity bit in Sub-status word.
void packer(uint32_t datum, int nbits)
Pack given data into given number of bits.
uint32_t unpacker(int nbits)
Unpack given number of bits of data.
void setUnpackErrorCode(int code)
Set the unpacking error code.
bool unpackerSuccess() const
Return unpacker success flag.
bool unpackerNeutralParityError(int pin)
Unpack and test G-Link parity bit for given pin.
void clear()
Clear all data.
void packerNeutralParity(int pin)
Pack current G-Link parity bit for given pin.
void packerFlush()
Flush the current data word padded with zeros.
uint32_t unpackerNeutral(int pin, int nbits)
Unpack given number of bits of neutral data for given pin.
int bunchCrossing() const
Return the Bunch Crossing number (neutral format only)
void unpackerInit()
Initialise unpacker.
void packerNeutral(int pin, uint32_t datum, int nbits)
Pack given neutral data from given pin.
void setBunchCrossing(int bc)
Set the Bunch Crossing number (neutral format only)
Extra patterns decribing particle interation process.