5#ifndef TRIGT1CALOBYTESTREAM_CPMSUBBLOCKV1_H
6#define TRIGT1CALOBYTESTREAM_CPMSUBBLOCKV1_H
37 int emErr,
int hadErr);
39 void setHits(
int slice,
unsigned int hit0,
unsigned int hit1);
97 int dataId(uint32_t word)
const;
99 int data(
int slice,
int channel,
int offset)
const;
101 int error(
int slice,
int channel,
int offset)
const;
103 unsigned int hits(
int slice,
int offset)
const;
107 void resize(std::vector<uint32_t>&
vec,
int channels);
std::vector< size_t > vec
char data[hepevt_bytes_allocation_ATLAS]
static const int s_parityBBit
static const int s_linkDownBBit
unsigned int hits0(int slice) const
Return e/gamma hit counts.
bool packUncompressed()
Pack uncompressed data.
void setHits(int slice, unsigned int hit0, unsigned int hit1)
Store hit counts.
static const int s_pairBit
unsigned int hits1(int slice) const
Return tau hit counts.
static const int s_glinkBitsPerSlice
int dataId(uint32_t word) const
Return data WordID.
unsigned int hits(int slice, int offset) const
Return hit counts with given offset.
static const int s_dataIdBit
int emData(int slice, int channel) const
Return Em data for given channel.
static const int s_ttDataBBit
static const uint32_t s_threshWordId
static const int s_hitBits
static const int s_wordsPerPin
std::vector< uint32_t > m_hitData
Hit counts.
static const uint32_t s_threshMask
static const uint32_t s_pairPinMask
void clear()
Clear all data.
static const int s_ttWordId
static const int s_fpgaBit
static const uint32_t s_dataIdMask
int emError(int slice, int channel) const
Return Em error for given channel.
void setCpmHeader(int version, int format, int slice, int crate, int module, int timeslices)
Store CPM header.
void resize(std::vector< uint32_t > &vec, int channels)
Resize a data vector according to format.
std::vector< uint32_t > m_ttData
Trigger tower data.
void fillTowerData(int slice, int channel, int em, int had, int emErr, int hadErr)
Store trigger tower data.
int hadError(int slice, int channel) const
Return Had error for given channel.
bool packNeutral()
Pack neutral data.
int timeslices() const
Return number of timeslices.
static const int s_ttDataABit
static const int s_ttBits
static const int s_parityABit
bool unpack()
Unpack data.
static const uint32_t s_ttDataMask
int m_channels
Number of Trigger tower channels per module.
static const int s_pairsPerPin
static const int s_hitWords
bool unpackNeutral()
Unpack neutral data.
static const int s_errBits
bool anyTowerData(int channel) const
Return true if there is tower data for given channel.
static const int s_indicatorBit
int hadData(int slice, int channel) const
Return Had data for given channel.
std::vector< int > m_chanPresent
Channel present flags vector.
static const int s_linkDownABit
static const int s_wordLength
Data word length.
bool unpackUncompressed()
Unpack uncompressed data.
static const int s_wordIdVal
CPM header word ID.
static const int s_glinkPins