|
ATLAS Offline Software
|
Sub-Block class for PPM data.
More...
#include <PpmSubBlockV1.h>
|
enum | SubBlockWordType { HEADER,
DATA,
STATUS
} |
|
enum | DataFormats { NEUTRAL = 0,
UNCOMPRESSED = 1,
COMPRESSED = 2,
SUPERCOMPRESSED = 3
} |
|
enum | DataErrorType {
ERROR_NONE,
ERROR_DUPLICATE_ROB,
ERROR_ROD_ID,
ERROR_ROD_NSTATUS,
ERROR_USER_HEADER,
ERROR_MISSING_HEADER,
ERROR_MISSING_SUBBLOCK,
ERROR_CRATE_NUMBER,
ERROR_MODULE_NUMBER,
ERROR_SLICES,
ERROR_DUPLICATE_DATA,
ERROR_ROI_TYPE,
ERROR_MAX
} |
|
enum | UnpackErrorType {
UNPACK_NONE = ERROR_NONE,
UNPACK_VERSION = ERROR_MAX,
UNPACK_FORMAT,
UNPACK_COMPRESSION_VERSION,
UNPACK_COMPRESSION_SLICES,
UNPACK_DATA_TRUNCATED,
UNPACK_EXCESS_DATA,
UNPACK_SOURCE_ID,
UNPACK_EXCESS_TOBS,
UNPACK_DATA_ID
} |
|
|
| PpmSubBlockV1 () |
|
| ~PpmSubBlockV1 () |
|
void | clear () |
| Clear all data. More...
|
|
void | setPpmHeader (int version, int format, int seqno, int crate, int module, int slicesFadc, int slicesLut) |
| Store PPM header. More...
|
|
void | setPpmErrorHeader (int version, int format, int crate, int module, int slicesFadc, int slicesLut) |
| Store PPM error block header. More...
|
|
int | slicesFadc () const |
|
int | slicesLut () const |
|
void | fillPpmData (int chan, const std::vector< int > &lut, const std::vector< int > &fadc, const std::vector< int > &bcidLut, const std::vector< int > &bcidFadc) |
| Store PPM data for later packing. More...
|
|
void | ppmData (int chan, std::vector< int > &lut, std::vector< int > &fadc, std::vector< int > &bcidLut, std::vector< int > &bcidFadc) |
| Return unpacked data for given channel. More...
|
|
void | fillPpmError (int chan, int errorWord) |
| Store an error word corresponding to a data channel. More...
|
|
void | fillPpmPinError (int pin, int errorWord) |
| Store an error word corresponding to a G-Link pin. More...
|
|
int | ppmError (int chan) const |
| Return the error word for a data channel. More...
|
|
int | ppmPinError (int pin) const |
| Return the error word for a G-Link pin. More...
|
|
bool | glinkPinParity (int chan) const |
|
bool | fpgaCorrupt (int chan) const |
|
bool | bunchMismatch (int chan) const |
|
bool | eventMismatch (int chan) const |
|
bool | asicFull (int chan) const |
|
bool | timeout (int chan) const |
|
bool | mcmAbsent (int chan) const |
|
bool | channelDisabled (int chan) const |
|
bool | channelDisabledA (int pin) const |
|
bool | channelDisabledB (int pin) const |
|
bool | channelDisabledC (int pin) const |
|
bool | channelDisabledD (int pin) const |
|
bool | glinkPinParity () const |
|
bool | fpgaCorrupt () const |
|
bool | bunchMismatch () const |
|
bool | eventMismatch () const |
|
bool | asicFull () const |
|
bool | timeout () const |
|
bool | mcmAbsent () const |
|
bool | channelDisabledA () const |
|
bool | channelDisabledB () const |
|
bool | channelDisabledC () const |
|
bool | channelDisabledD () const |
|
void | setLutOffset (int offset) |
|
void | setFadcOffset (int offset) |
|
void | setPedestal (int pedval) |
|
void | setFadcBaseline (int baseline) |
|
void | setFadcThreshold (int threshold) |
|
void | setRunNumber (int run) |
|
int | lutOffset () const |
|
int | fadcOffset () const |
|
int | pedestal () const |
|
int | fadcBaseline () const |
|
int | fadcThreshold () const |
|
int | runNumber () const |
|
bool | pack () |
| Pack data. More...
|
|
bool | unpack () |
| Unpack data. More...
|
|
int | channelsPerSubBlock (int version, int format) |
| Return the number of channels per sub-block. More...
|
|
int | channelsPerSubBlock () |
|
void | setCompStats (const std::vector< uint32_t > &stats) |
| Set compression stats. More...
|
|
const std::vector< uint32_t > & | compStats () const |
| Return reference to compression stats. More...
|
|
int | dataWords () const |
| Return number of data words. More...
|
|
void | setHeader (int wordId, int version, int format, int seqno, int crate, int module, int slices2, int slices1) |
| Store header data. More...
|
|
int | wordId () const |
|
int | version () const |
|
int | format () const |
|
int | seqno () const |
|
int | slice () const |
|
int | crate () const |
|
int | module () const |
|
int | slices2 () const |
|
int | slices1 () const |
|
uint32_t | failingBCN () const |
|
bool | glinkTimeout () const |
|
bool | glinkDown () const |
|
bool | upstreamError () const |
|
bool | daqOverflow () const |
|
bool | bcnMismatch () const |
|
bool | glinkProtocol () const |
|
bool | glinkParity () const |
|
uint32_t | subStatus () const |
| Return Sub-status word. More...
|
|
void | setBunchCrossing (int bc) |
| Set the Bunch Crossing number (neutral format only) More...
|
|
int | bunchCrossing () const |
| Return the Bunch Crossing number (neutral format only) More...
|
|
OFFLINE_FRAGMENTS_NAMESPACE::PointerType | read (const OFFLINE_FRAGMENTS_NAMESPACE::PointerType beg, const OFFLINE_FRAGMENTS_NAMESPACE::PointerType end) |
| Input complete packed sub-block from ROD array. More...
|
|
void | write (FullEventAssembler< L1CaloSrcIdMap >::RODDATA *theROD) const |
| Output complete packed sub-block to ROD vector. More...
|
|
void | setStatus (uint32_t failingBCN, bool glinkTimeout, bool glinkDown, bool upstreamError, bool daqOverflow, bool bcnMismatch, bool glinkProtocol, bool glinkParity) |
| Store error status trailer. More...
|
|
void | setDaqOverflow (int bit=1) |
| Set DAQ FIFO Overflow bit in Sub-status word. More...
|
|
void | setGlinkParity (int bit=1) |
| Set G-Link Parity bit in Sub-status word. More...
|
|
void | setUnpackErrorCode (int code) |
| Set the unpacking error code. More...
|
|
int | unpackErrorCode () const |
| Return the unpacking error code. More...
|
|
std::string | unpackErrorMsg () const |
| Return the unpacking error message for printing. More...
|
|
int | minBits (uint32_t datum) const |
| Return the minimum number of bits needed for given data. More...
|
|
int | parityBit (int init, uint32_t datum, int nbits) const |
| Return the parity bit for given data. More...
|
|
void | packer (uint32_t datum, int nbits) |
| Pack given data into given number of bits. More...
|
|
void | packerFlush () |
| Flush the current data word padded with zeros. More...
|
|
void | setStreamed () |
| Set continuous bit streaming for compressed formats. More...
|
|
uint32_t | unpacker (int nbits) |
| Unpack given number of bits of data. More...
|
|
uint32_t | unpacker (int nbits, int align) |
|
void | unpackerInit () |
| Initialise unpacker. More...
|
|
bool | unpackerSuccess () const |
| Return unpacker success flag. More...
|
|
void | packerNeutral (int pin, uint32_t datum, int nbits) |
| Pack given neutral data from given pin. More...
|
|
void | packerNeutralParity (int pin) |
| Pack current G-Link parity bit for given pin. More...
|
|
uint32_t | unpackerNeutral (int pin, int nbits) |
| Unpack given number of bits of neutral data for given pin. More...
|
|
bool | unpackerNeutralParityError (int pin) |
| Unpack and test G-Link parity bit for given pin. More...
|
|
int | currentPinBit (int pin) const |
| Return current pin bit for given pin. More...
|
|
|
static bool | errorBlock (uint32_t word) |
| Check if a header word is for an error block. More...
|
|
static int | wordId (uint32_t word) |
| Return wordID field from given header word. More...
|
|
static int | version (uint32_t word) |
| Return version number from given header word. More...
|
|
static int | format (uint32_t word) |
| Return data format from given header word. More...
|
|
static int | seqno (uint32_t word) |
| Return seqno field from given header word. More...
|
|
static int | module (uint32_t word) |
| Return module field from given header word. More...
|
|
static SubBlockWordType | wordType (uint32_t word) |
| Word identification. More...
|
|
Sub-Block class for PPM data.
- Author
- Peter Faulkner
Definition at line 20 of file PpmSubBlockV1.h.
◆ DataErrorType
Enumerator |
---|
ERROR_NONE | |
ERROR_DUPLICATE_ROB | |
ERROR_ROD_ID | |
ERROR_ROD_NSTATUS | |
ERROR_USER_HEADER | |
ERROR_MISSING_HEADER | |
ERROR_MISSING_SUBBLOCK | |
ERROR_CRATE_NUMBER | |
ERROR_MODULE_NUMBER | |
ERROR_SLICES | |
ERROR_DUPLICATE_DATA | |
ERROR_ROI_TYPE | |
ERROR_MAX | |
Definition at line 31 of file L1CaloSubBlock.h.
◆ DataFormats
Enumerator |
---|
NEUTRAL | |
UNCOMPRESSED | |
COMPRESSED | |
SUPERCOMPRESSED | |
Definition at line 28 of file L1CaloSubBlock.h.
◆ SubBlockWordType
◆ UnpackErrorType
Enumerator |
---|
UNPACK_NONE | |
UNPACK_VERSION | |
UNPACK_FORMAT | |
UNPACK_COMPRESSION_VERSION | |
UNPACK_COMPRESSION_SLICES | |
UNPACK_DATA_TRUNCATED | |
UNPACK_EXCESS_DATA | |
UNPACK_SOURCE_ID | |
UNPACK_EXCESS_TOBS | |
UNPACK_DATA_ID | |
Definition at line 38 of file L1CaloSubBlock.h.
◆ PpmSubBlockV1()
LVL1BS::PpmSubBlockV1::PpmSubBlockV1 |
( |
| ) |
|
◆ ~PpmSubBlockV1()
LVL1BS::PpmSubBlockV1::~PpmSubBlockV1 |
( |
| ) |
|
◆ asic()
int LVL1BS::PpmSubBlockV1::asic |
( |
int |
chan | ) |
const |
|
inlineprivate |
Return the ASIC channel corresponding to a data channel.
Definition at line 383 of file PpmSubBlockV1.h.
◆ asicFull() [1/2]
bool LVL1BS::PpmSubBlockV1::asicFull |
( |
| ) |
const |
|
inline |
◆ asicFull() [2/2]
bool LVL1BS::PpmSubBlockV1::asicFull |
( |
int |
chan | ) |
const |
|
inline |
◆ bcnMismatch()
bool LVL1BS::L1CaloSubBlock::bcnMismatch |
( |
| ) |
const |
|
inlineinherited |
◆ bunchCrossing()
int LVL1BS::L1CaloSubBlock::bunchCrossing |
( |
| ) |
const |
|
inlineinherited |
Return the Bunch Crossing number (neutral format only)
Definition at line 333 of file L1CaloSubBlock.h.
◆ bunchMismatch() [1/2]
bool LVL1BS::PpmSubBlockV1::bunchMismatch |
( |
| ) |
const |
|
inline |
◆ bunchMismatch() [2/2]
bool LVL1BS::PpmSubBlockV1::bunchMismatch |
( |
int |
chan | ) |
const |
|
inline |
◆ channelDisabled()
bool LVL1BS::PpmSubBlockV1::channelDisabled |
( |
int |
chan | ) |
const |
|
inline |
◆ channelDisabledA() [1/2]
bool LVL1BS::PpmSubBlockV1::channelDisabledA |
( |
| ) |
const |
|
inline |
◆ channelDisabledA() [2/2]
bool LVL1BS::PpmSubBlockV1::channelDisabledA |
( |
int |
pin | ) |
const |
|
inline |
◆ channelDisabledB() [1/2]
bool LVL1BS::PpmSubBlockV1::channelDisabledB |
( |
| ) |
const |
|
inline |
◆ channelDisabledB() [2/2]
bool LVL1BS::PpmSubBlockV1::channelDisabledB |
( |
int |
pin | ) |
const |
|
inline |
◆ channelDisabledC() [1/2]
bool LVL1BS::PpmSubBlockV1::channelDisabledC |
( |
| ) |
const |
|
inline |
◆ channelDisabledC() [2/2]
bool LVL1BS::PpmSubBlockV1::channelDisabledC |
( |
int |
pin | ) |
const |
|
inline |
◆ channelDisabledD() [1/2]
bool LVL1BS::PpmSubBlockV1::channelDisabledD |
( |
| ) |
const |
|
inline |
◆ channelDisabledD() [2/2]
bool LVL1BS::PpmSubBlockV1::channelDisabledD |
( |
int |
pin | ) |
const |
|
inline |
◆ channelsPerSubBlock() [1/2]
int LVL1BS::PpmSubBlockV1::channelsPerSubBlock |
( |
| ) |
|
◆ channelsPerSubBlock() [2/2]
int LVL1BS::PpmSubBlockV1::channelsPerSubBlock |
( |
int |
version, |
|
|
int |
format |
|
) |
| |
◆ clear()
void LVL1BS::PpmSubBlockV1::clear |
( |
| ) |
|
◆ compStats()
const std::vector< uint32_t > & LVL1BS::PpmSubBlockV1::compStats |
( |
| ) |
const |
|
inline |
◆ crate()
int LVL1BS::L1CaloSubBlock::crate |
( |
| ) |
const |
|
inlineinherited |
◆ currentPinBit()
int LVL1BS::L1CaloSubBlock::currentPinBit |
( |
int |
pin | ) |
const |
|
inlineinherited |
◆ daqOverflow()
bool LVL1BS::L1CaloSubBlock::daqOverflow |
( |
| ) |
const |
|
inlineinherited |
◆ dataWords()
int LVL1BS::L1CaloSubBlock::dataWords |
( |
| ) |
const |
|
inlineinherited |
◆ errorBit() [1/2]
bool LVL1BS::PpmSubBlockV1::errorBit |
( |
int |
bit | ) |
const |
|
private |
◆ errorBit() [2/2]
bool LVL1BS::PpmSubBlockV1::errorBit |
( |
int |
pin, |
|
|
int |
bit |
|
) |
| const |
|
inlineprivate |
◆ errorBlock()
bool LVL1BS::PpmSubBlockV1::errorBlock |
( |
uint32_t |
word | ) |
|
|
static |
◆ eventMismatch() [1/2]
bool LVL1BS::PpmSubBlockV1::eventMismatch |
( |
| ) |
const |
|
inline |
◆ eventMismatch() [2/2]
bool LVL1BS::PpmSubBlockV1::eventMismatch |
( |
int |
chan | ) |
const |
|
inline |
◆ fadcBaseline()
int LVL1BS::PpmSubBlockV1::fadcBaseline |
( |
| ) |
const |
|
inline |
◆ fadcOffset()
int LVL1BS::PpmSubBlockV1::fadcOffset |
( |
| ) |
const |
|
inline |
◆ fadcThreshold()
int LVL1BS::PpmSubBlockV1::fadcThreshold |
( |
| ) |
const |
|
inline |
◆ failingBCN()
uint32_t LVL1BS::L1CaloSubBlock::failingBCN |
( |
| ) |
const |
|
inlineinherited |
◆ fillPpmData()
void LVL1BS::PpmSubBlockV1::fillPpmData |
( |
int |
chan, |
|
|
const std::vector< int > & |
lut, |
|
|
const std::vector< int > & |
fadc, |
|
|
const std::vector< int > & |
bcidLut, |
|
|
const std::vector< int > & |
bcidFadc |
|
) |
| |
Store PPM data for later packing.
Definition at line 110 of file PpmSubBlockV1.cxx.
117 const int slices = sliceL + sliceF;
134 const int adc = (fadc[
pos] > 0) ? fadc[
pos] : 0;
◆ fillPpmError()
void LVL1BS::PpmSubBlockV1::fillPpmError |
( |
int |
chan, |
|
|
int |
errorWord |
|
) |
| |
Store an error word corresponding to a data channel.
Definition at line 181 of file PpmSubBlockV1.cxx.
◆ fillPpmPinError()
void LVL1BS::PpmSubBlockV1::fillPpmPinError |
( |
int |
pin, |
|
|
int |
errorWord |
|
) |
| |
Store an error word corresponding to a G-Link pin.
Definition at line 194 of file PpmSubBlockV1.cxx.
◆ format() [1/2]
int LVL1BS::L1CaloSubBlock::format |
( |
| ) |
const |
|
inlineinherited |
◆ format() [2/2]
int LVL1BS::L1CaloSubBlock::format |
( |
uint32_t |
word | ) |
|
|
staticinherited |
◆ fpgaCorrupt() [1/2]
bool LVL1BS::PpmSubBlockV1::fpgaCorrupt |
( |
| ) |
const |
|
inline |
◆ fpgaCorrupt() [2/2]
bool LVL1BS::PpmSubBlockV1::fpgaCorrupt |
( |
int |
chan | ) |
const |
|
inline |
◆ glinkDown()
bool LVL1BS::L1CaloSubBlock::glinkDown |
( |
| ) |
const |
|
inlineinherited |
◆ glinkParity()
bool LVL1BS::L1CaloSubBlock::glinkParity |
( |
| ) |
const |
|
inlineinherited |
◆ glinkPinParity() [1/2]
bool LVL1BS::PpmSubBlockV1::glinkPinParity |
( |
| ) |
const |
|
inline |
◆ glinkPinParity() [2/2]
bool LVL1BS::PpmSubBlockV1::glinkPinParity |
( |
int |
chan | ) |
const |
|
inline |
◆ glinkProtocol()
bool LVL1BS::L1CaloSubBlock::glinkProtocol |
( |
| ) |
const |
|
inlineinherited |
◆ glinkTimeout()
bool LVL1BS::L1CaloSubBlock::glinkTimeout |
( |
| ) |
const |
|
inlineinherited |
◆ lutOffset()
int LVL1BS::PpmSubBlockV1::lutOffset |
( |
| ) |
const |
|
inline |
◆ mcmAbsent() [1/2]
bool LVL1BS::PpmSubBlockV1::mcmAbsent |
( |
| ) |
const |
|
inline |
◆ mcmAbsent() [2/2]
bool LVL1BS::PpmSubBlockV1::mcmAbsent |
( |
int |
chan | ) |
const |
|
inline |
◆ minBits()
int LVL1BS::L1CaloSubBlock::minBits |
( |
uint32_t |
datum | ) |
const |
|
inherited |
Return the minimum number of bits needed for given data.
Definition at line 274 of file L1CaloSubBlock.cxx.
276 const int maxBits = 32;
278 for (
int i = 0;
i < maxBits; ++
i)
◆ module() [1/2]
int LVL1BS::L1CaloSubBlock::module |
( |
| ) |
const |
|
inlineinherited |
◆ module() [2/2]
int LVL1BS::L1CaloSubBlock::module |
( |
uint32_t |
word | ) |
|
|
staticinherited |
◆ pack()
bool LVL1BS::PpmSubBlockV1::pack |
( |
| ) |
|
◆ packer()
void LVL1BS::L1CaloSubBlock::packer |
( |
uint32_t |
datum, |
|
|
int |
nbits |
|
) |
| |
|
inherited |
◆ packerFlush()
void LVL1BS::L1CaloSubBlock::packerFlush |
( |
| ) |
|
|
inherited |
◆ packerNeutral()
void LVL1BS::L1CaloSubBlock::packerNeutral |
( |
int |
pin, |
|
|
uint32_t |
datum, |
|
|
int |
nbits |
|
) |
| |
|
inherited |
Pack given neutral data from given pin.
Definition at line 413 of file L1CaloSubBlock.cxx.
416 if (pin >= 0 && pin < s_maxPins && nbits > 0)
423 for (
int bit = 0; bit < nbits; ++bit)
◆ packerNeutralParity()
void LVL1BS::L1CaloSubBlock::packerNeutralParity |
( |
int |
pin | ) |
|
|
inherited |
◆ packNeutral()
bool LVL1BS::PpmSubBlockV1::packNeutral |
( |
| ) |
|
|
private |
◆ packUncompressedData()
bool LVL1BS::PpmSubBlockV1::packUncompressedData |
( |
| ) |
|
|
private |
◆ packUncompressedErrors()
bool LVL1BS::PpmSubBlockV1::packUncompressedErrors |
( |
| ) |
|
|
private |
◆ parityBit()
int LVL1BS::L1CaloSubBlock::parityBit |
( |
int |
init, |
|
|
uint32_t |
datum, |
|
|
int |
nbits |
|
) |
| const |
|
inherited |
Return the parity bit for given data.
Definition at line 291 of file L1CaloSubBlock.cxx.
296 for (
int bit = 0; bit < nbits; ++bit) parity ^= (datum >> bit) & 0x1;
◆ pedestal()
int LVL1BS::PpmSubBlockV1::pedestal |
( |
| ) |
const |
|
inline |
◆ pin()
int LVL1BS::PpmSubBlockV1::pin |
( |
int |
chan | ) |
const |
|
inlineprivate |
Return the G-Link pin corresponding to a data channel.
Definition at line 388 of file PpmSubBlockV1.h.
◆ ppmData()
void LVL1BS::PpmSubBlockV1::ppmData |
( |
int |
chan, |
|
|
std::vector< int > & |
lut, |
|
|
std::vector< int > & |
fadc, |
|
|
std::vector< int > & |
bcidLut, |
|
|
std::vector< int > & |
bcidFadc |
|
) |
| |
Return unpacked data for given channel.
Definition at line 144 of file PpmSubBlockV1.cxx.
174 bcidLut.resize(sliceL);
175 bcidFadc.resize(sliceF);
◆ ppmError()
int LVL1BS::PpmSubBlockV1::ppmError |
( |
int |
chan | ) |
const |
◆ ppmPinError()
int LVL1BS::PpmSubBlockV1::ppmPinError |
( |
int |
pin | ) |
const |
◆ read()
Input complete packed sub-block from ROD array.
Definition at line 118 of file L1CaloSubBlock.cxx.
126 for (;
pos != pose; ++
pos)
144 const int id =
wordId(word);
151 else if (
wordId() == 0xc) badId = (((
id & 0xc) != 0x4) &&
152 ((
id & 0xc) != 0x8));
154 else badId = ((
id & 0xc) != 0);
◆ runNumber()
int LVL1BS::PpmSubBlockV1::runNumber |
( |
| ) |
const |
|
inline |
◆ seqno() [1/2]
int LVL1BS::L1CaloSubBlock::seqno |
( |
| ) |
const |
|
inlineinherited |
◆ seqno() [2/2]
int LVL1BS::L1CaloSubBlock::seqno |
( |
uint32_t |
word | ) |
|
|
staticinherited |
◆ setBunchCrossing()
void LVL1BS::L1CaloSubBlock::setBunchCrossing |
( |
int |
bc | ) |
|
|
inlineinherited |
Set the Bunch Crossing number (neutral format only)
Definition at line 328 of file L1CaloSubBlock.h.
◆ setCompStats()
void LVL1BS::PpmSubBlockV1::setCompStats |
( |
const std::vector< uint32_t > & |
stats | ) |
|
|
inline |
◆ setDaqOverflow()
void LVL1BS::L1CaloSubBlock::setDaqOverflow |
( |
int |
bit = 1 | ) |
|
|
inherited |
Set DAQ FIFO Overflow bit in Sub-status word.
Definition at line 206 of file L1CaloSubBlock.cxx.
211 else setStatus(0,
false,
false,
false,
true,
false,
false,
false);
◆ setFadcBaseline()
void LVL1BS::PpmSubBlockV1::setFadcBaseline |
( |
int |
baseline | ) |
|
|
inline |
◆ setFadcOffset()
void LVL1BS::PpmSubBlockV1::setFadcOffset |
( |
int |
offset | ) |
|
|
inline |
◆ setFadcThreshold()
void LVL1BS::PpmSubBlockV1::setFadcThreshold |
( |
int |
threshold | ) |
|
|
inline |
◆ setGlinkParity()
void LVL1BS::L1CaloSubBlock::setGlinkParity |
( |
int |
bit = 1 | ) |
|
|
inherited |
◆ setHeader()
void LVL1BS::L1CaloSubBlock::setHeader |
( |
int |
wordId, |
|
|
int |
version, |
|
|
int |
format, |
|
|
int |
seqno, |
|
|
int |
crate, |
|
|
int |
module, |
|
|
int |
slices2, |
|
|
int |
slices1 |
|
) |
| |
|
inherited |
◆ setLutOffset()
void LVL1BS::PpmSubBlockV1::setLutOffset |
( |
int |
offset | ) |
|
|
inline |
◆ setPedestal()
void LVL1BS::PpmSubBlockV1::setPedestal |
( |
int |
pedval | ) |
|
|
inline |
◆ setPpmErrorHeader()
void LVL1BS::PpmSubBlockV1::setPpmErrorHeader |
( |
int |
version, |
|
|
int |
format, |
|
|
int |
crate, |
|
|
int |
module, |
|
|
int |
slicesFadc, |
|
|
int |
slicesLut |
|
) |
| |
◆ setPpmHeader()
void LVL1BS::PpmSubBlockV1::setPpmHeader |
( |
int |
version, |
|
|
int |
format, |
|
|
int |
seqno, |
|
|
int |
crate, |
|
|
int |
module, |
|
|
int |
slicesFadc, |
|
|
int |
slicesLut |
|
) |
| |
◆ setRunNumber()
void LVL1BS::PpmSubBlockV1::setRunNumber |
( |
int |
run | ) |
|
|
inline |
◆ setStatus()
void LVL1BS::L1CaloSubBlock::setStatus |
( |
uint32_t |
failingBCN, |
|
|
bool |
glinkTimeout, |
|
|
bool |
glinkDown, |
|
|
bool |
upstreamError, |
|
|
bool |
daqOverflow, |
|
|
bool |
bcnMismatch, |
|
|
bool |
glinkProtocol, |
|
|
bool |
glinkParity |
|
) |
| |
|
inherited |
◆ setStreamed()
void LVL1BS::L1CaloSubBlock::setStreamed |
( |
| ) |
|
|
inlineinherited |
Set continuous bit streaming for compressed formats.
Definition at line 348 of file L1CaloSubBlock.h.
◆ setUnpackErrorCode()
void LVL1BS::L1CaloSubBlock::setUnpackErrorCode |
( |
int |
code | ) |
|
|
inlineinherited |
◆ slice()
int LVL1BS::L1CaloSubBlock::slice |
( |
| ) |
const |
|
inlineinherited |
◆ slices1()
int LVL1BS::L1CaloSubBlock::slices1 |
( |
| ) |
const |
|
inlineinherited |
◆ slices2()
int LVL1BS::L1CaloSubBlock::slices2 |
( |
| ) |
const |
|
inlineinherited |
◆ slicesFadc()
int LVL1BS::PpmSubBlockV1::slicesFadc |
( |
| ) |
const |
◆ slicesLut()
int LVL1BS::PpmSubBlockV1::slicesLut |
( |
| ) |
const |
◆ subStatus()
uint32_t LVL1BS::L1CaloSubBlock::subStatus |
( |
| ) |
const |
|
inlineinherited |
◆ timeout() [1/2]
bool LVL1BS::PpmSubBlockV1::timeout |
( |
| ) |
const |
|
inline |
◆ timeout() [2/2]
bool LVL1BS::PpmSubBlockV1::timeout |
( |
int |
chan | ) |
const |
|
inline |
◆ unpack()
bool LVL1BS::PpmSubBlockV1::unpack |
( |
| ) |
|
◆ unpacker() [1/2]
uint32_t LVL1BS::L1CaloSubBlock::unpacker |
( |
int |
nbits | ) |
|
|
inherited |
Unpack given number of bits of data.
Definition at line 345 of file L1CaloSubBlock.cxx.
355 int nbitsDone = nbits;
375 const int bitsLeft = nbits - nbitsDone;
◆ unpacker() [2/2]
uint32_t LVL1BS::L1CaloSubBlock::unpacker |
( |
int |
nbits, |
|
|
int |
align |
|
) |
| |
|
inherited |
◆ unpackerInit()
void LVL1BS::L1CaloSubBlock::unpackerInit |
( |
| ) |
|
|
inherited |
◆ unpackerNeutral()
uint32_t LVL1BS::L1CaloSubBlock::unpackerNeutral |
( |
int |
pin, |
|
|
int |
nbits |
|
) |
| |
|
inherited |
Unpack given number of bits of neutral data for given pin.
Definition at line 445 of file L1CaloSubBlock.cxx.
448 if (pin >= 0 && pin < s_maxPins && nbits > 0
451 for (
int bit = 0; bit < nbits; ++bit)
◆ unpackerNeutralParityError()
bool LVL1BS::L1CaloSubBlock::unpackerNeutralParityError |
( |
int |
pin | ) |
|
|
inherited |
◆ unpackErrorCode()
int LVL1BS::L1CaloSubBlock::unpackErrorCode |
( |
| ) |
const |
|
inlineinherited |
◆ unpackErrorMsg()
std::string LVL1BS::L1CaloSubBlock::unpackErrorMsg |
( |
| ) |
const |
|
inherited |
Return the unpacking error message for printing.
Definition at line 228 of file L1CaloSubBlock.cxx.
237 msg =
"Unsupported Data Version";
240 msg =
"Unsupported Data Format";
243 msg =
"Unsupported Compression Version";
246 msg =
"Unsupported Number of Slices for Compression Version";
249 msg =
"Premature End of Sub-block Data";
252 msg =
"Excess Data in Sub-block";
255 msg =
"Invalid Source ID in Sub-block Data";
258 msg =
"Excess TOBs in Sub-block Data";
261 msg =
"Invalid word ID in Sub-block Data";
264 msg =
"Unknown Error Code";
◆ unpackerSuccess()
bool LVL1BS::L1CaloSubBlock::unpackerSuccess |
( |
| ) |
const |
|
inlineinherited |
◆ unpackNeutral()
bool LVL1BS::PpmSubBlockV1::unpackNeutral |
( |
| ) |
|
|
private |
◆ unpackUncompressedData()
bool LVL1BS::PpmSubBlockV1::unpackUncompressedData |
( |
| ) |
|
|
private |
◆ unpackUncompressedErrors()
bool LVL1BS::PpmSubBlockV1::unpackUncompressedErrors |
( |
| ) |
|
|
private |
◆ upstreamError()
bool LVL1BS::L1CaloSubBlock::upstreamError |
( |
| ) |
const |
|
inlineinherited |
◆ version() [1/2]
int LVL1BS::L1CaloSubBlock::version |
( |
| ) |
const |
|
inlineinherited |
◆ version() [2/2]
int LVL1BS::L1CaloSubBlock::version |
( |
uint32_t |
word | ) |
|
|
staticinherited |
◆ wordId() [1/2]
int LVL1BS::L1CaloSubBlock::wordId |
( |
| ) |
const |
|
inlineinherited |
◆ wordId() [2/2]
int LVL1BS::L1CaloSubBlock::wordId |
( |
uint32_t |
word | ) |
|
|
staticinherited |
◆ wordType()
◆ write()
Output complete packed sub-block to ROD vector.
Definition at line 165 of file L1CaloSubBlock.cxx.
169 std::vector<uint32_t>::const_iterator
pos;
172 theROD->push_back(*
pos);
◆ m_bitword
uint32_t LVL1BS::L1CaloSubBlock::m_bitword |
|
privateinherited |
◆ m_bunchCrossing
int LVL1BS::L1CaloSubBlock::m_bunchCrossing |
|
privateinherited |
◆ m_compStats
std::vector<uint32_t> LVL1BS::PpmSubBlockV1::m_compStats |
|
private |
◆ m_currentBit
int LVL1BS::L1CaloSubBlock::m_currentBit |
|
privateinherited |
◆ m_currentPinBit
std::vector<int> LVL1BS::L1CaloSubBlock::m_currentPinBit |
|
privateinherited |
◆ m_data
std::vector<uint32_t> LVL1BS::L1CaloSubBlock::m_data |
|
privateinherited |
◆ m_datamap
std::vector<uint32_t> LVL1BS::PpmSubBlockV1::m_datamap |
|
private |
◆ m_dataPos
std::vector<uint32_t>::const_iterator LVL1BS::L1CaloSubBlock::m_dataPos |
|
privateinherited |
◆ m_dataPosEnd
std::vector<uint32_t>::const_iterator LVL1BS::L1CaloSubBlock::m_dataPosEnd |
|
privateinherited |
◆ m_dataWords
int LVL1BS::L1CaloSubBlock::m_dataWords |
|
privateinherited |
◆ m_errormap
std::vector<uint32_t> LVL1BS::PpmSubBlockV1::m_errormap |
|
private |
◆ m_fadcBaseline
int LVL1BS::PpmSubBlockV1::m_fadcBaseline |
|
private |
◆ m_fadcOffset
int LVL1BS::PpmSubBlockV1::m_fadcOffset |
|
private |
◆ m_fadcThreshold
int LVL1BS::PpmSubBlockV1::m_fadcThreshold |
|
private |
◆ m_globalError
uint32_t LVL1BS::PpmSubBlockV1::m_globalError |
|
private |
◆ m_header
uint32_t LVL1BS::L1CaloSubBlock::m_header |
|
privateinherited |
◆ m_lutOffset
int LVL1BS::PpmSubBlockV1::m_lutOffset |
|
private |
◆ m_maxBits
int LVL1BS::L1CaloSubBlock::m_maxBits |
|
privateinherited |
◆ m_maxMask
uint32_t LVL1BS::L1CaloSubBlock::m_maxMask |
|
privateinherited |
◆ m_oddParity
std::vector<int> LVL1BS::L1CaloSubBlock::m_oddParity |
|
privateinherited |
◆ m_pedestal
int LVL1BS::PpmSubBlockV1::m_pedestal |
|
private |
◆ m_runNumber
int LVL1BS::PpmSubBlockV1::m_runNumber |
|
private |
◆ m_trailer
uint32_t LVL1BS::L1CaloSubBlock::m_trailer |
|
privateinherited |
◆ m_unpackerFlag
bool LVL1BS::L1CaloSubBlock::m_unpackerFlag |
|
privateinherited |
◆ m_unpackError
int LVL1BS::L1CaloSubBlock::m_unpackError |
|
privateinherited |
◆ m_unpackingMasks
std::vector<uint32_t> LVL1BS::L1CaloSubBlock::m_unpackingMasks |
|
privateinherited |
◆ s_asicChannels
const int LVL1BS::PpmSubBlockV1::s_asicChannels = 4 |
|
staticprivate |
◆ s_asicFullBit
const int LVL1BS::PpmSubBlockV1::s_asicFullBit = 6 |
|
staticprivate |
◆ s_bcidFadcBit
const int LVL1BS::PpmSubBlockV1::s_bcidFadcBit = 0 |
|
staticprivate |
◆ s_bcidFadcMask
const uint32_t LVL1BS::PpmSubBlockV1::s_bcidFadcMask = 0x1 |
|
staticprivate |
◆ s_bcidLutBit
const int LVL1BS::PpmSubBlockV1::s_bcidLutBit = 8 |
|
staticprivate |
◆ s_bcidLutMask
const uint32_t LVL1BS::PpmSubBlockV1::s_bcidLutMask = 0x7 |
|
staticprivate |
◆ s_bcnMismatchBit
const int LVL1BS::L1CaloSubBlock::s_bcnMismatchBit = 2 |
|
staticprivateinherited |
◆ s_bunchCrossingBits
const int LVL1BS::PpmSubBlockV1::s_bunchCrossingBits = 12 |
|
staticprivate |
◆ s_bunchMismatchBit
const int LVL1BS::PpmSubBlockV1::s_bunchMismatchBit = 8 |
|
staticprivate |
◆ s_channelDisabledBit
const int LVL1BS::PpmSubBlockV1::s_channelDisabledBit = 0 |
|
staticprivate |
◆ s_channels
const int LVL1BS::PpmSubBlockV1::s_channels = 64 |
|
staticprivate |
◆ s_crateBit
const int LVL1BS::L1CaloSubBlock::s_crateBit = 12 |
|
staticprivateinherited |
◆ s_crateMask
const uint32_t LVL1BS::L1CaloSubBlock::s_crateMask = 0xf |
|
staticprivateinherited |
◆ s_daqOverflowBit
const int LVL1BS::L1CaloSubBlock::s_daqOverflowBit = 3 |
|
staticprivateinherited |
◆ s_dataBits
const int LVL1BS::PpmSubBlockV1::s_dataBits = 11 |
|
staticprivate |
◆ s_errorBits
const int LVL1BS::PpmSubBlockV1::s_errorBits = 10 |
|
staticprivate |
◆ s_errorMarker
const int LVL1BS::PpmSubBlockV1::s_errorMarker = 63 |
|
staticprivate |
◆ s_errorMask
const uint32_t LVL1BS::PpmSubBlockV1::s_errorMask = 0x7ff |
|
staticprivate |
◆ s_eventMismatchBit
const int LVL1BS::PpmSubBlockV1::s_eventMismatchBit = 7 |
|
staticprivate |
◆ s_fadcBit
const int LVL1BS::PpmSubBlockV1::s_fadcBit = 1 |
|
staticprivate |
◆ s_fadcMask
const uint32_t LVL1BS::PpmSubBlockV1::s_fadcMask = 0x3ff |
|
staticprivate |
◆ s_failingBcnBit
const int LVL1BS::L1CaloSubBlock::s_failingBcnBit = 22 |
|
staticprivateinherited |
◆ s_failingBcnMask
const uint32_t LVL1BS::L1CaloSubBlock::s_failingBcnMask = 0x3f |
|
staticprivateinherited |
◆ s_formatBit
const int LVL1BS::L1CaloSubBlock::s_formatBit = 22 |
|
staticprivateinherited |
◆ s_formatMask
const uint32_t LVL1BS::L1CaloSubBlock::s_formatMask = 0x7 |
|
staticprivateinherited |
◆ s_fpgaCorruptBit
const int LVL1BS::PpmSubBlockV1::s_fpgaCorruptBit = 9 |
|
staticprivate |
◆ s_glinkDavSet
const uint32_t LVL1BS::L1CaloSubBlock::s_glinkDavSet = 0x400000 |
|
staticprivateinherited |
◆ s_glinkDownBit
const int LVL1BS::L1CaloSubBlock::s_glinkDownBit = 6 |
|
staticprivateinherited |
◆ s_glinkParityBit
const int LVL1BS::L1CaloSubBlock::s_glinkParityBit = 0 |
|
staticprivateinherited |
◆ s_glinkPinParityBit
const int LVL1BS::PpmSubBlockV1::s_glinkPinParityBit = 10 |
|
staticprivate |
◆ s_glinkPins
const int LVL1BS::PpmSubBlockV1::s_glinkPins = 16 |
|
staticprivate |
◆ s_glinkProtocolBit
const int LVL1BS::L1CaloSubBlock::s_glinkProtocolBit = 1 |
|
staticprivateinherited |
◆ s_glinkTimeoutBit
const int LVL1BS::L1CaloSubBlock::s_glinkTimeoutBit = 7 |
|
staticprivateinherited |
◆ s_headerBit
const int LVL1BS::L1CaloSubBlock::s_headerBit = 30 |
|
staticprivateinherited |
◆ s_headerMask
const uint32_t LVL1BS::L1CaloSubBlock::s_headerMask = 0x3 |
|
staticprivateinherited |
◆ s_headerVal
const uint32_t LVL1BS::L1CaloSubBlock::s_headerVal = 0x3 |
|
staticprivateinherited |
◆ s_lutBit
const int LVL1BS::PpmSubBlockV1::s_lutBit = 0 |
|
staticprivate |
◆ s_lutMask
const uint32_t LVL1BS::PpmSubBlockV1::s_lutMask = 0xff |
|
staticprivate |
◆ s_maxPins
const int LVL1BS::L1CaloSubBlock::s_maxPins = 20 |
|
staticprivateinherited |
◆ s_maxStreamedBits
const int LVL1BS::L1CaloSubBlock::s_maxStreamedBits = 31 |
|
staticprivateinherited |
◆ s_maxStreamedMask
const uint32_t LVL1BS::L1CaloSubBlock::s_maxStreamedMask = 0x7fffffff |
|
staticprivateinherited |
◆ s_maxWordBits
const int LVL1BS::L1CaloSubBlock::s_maxWordBits = 32 |
|
staticprivateinherited |
◆ s_maxWordMask
const uint32_t LVL1BS::L1CaloSubBlock::s_maxWordMask = 0xffffffff |
|
staticprivateinherited |
◆ s_mcmAbsentBit
const int LVL1BS::PpmSubBlockV1::s_mcmAbsentBit = 4 |
|
staticprivate |
◆ s_moduleBit
const int LVL1BS::L1CaloSubBlock::s_moduleBit = 8 |
|
staticprivateinherited |
◆ s_moduleMask
const uint32_t LVL1BS::L1CaloSubBlock::s_moduleMask = 0xf |
|
staticprivateinherited |
◆ s_ppmCrates
const int LVL1BS::L1CaloSubBlock::s_ppmCrates = 8 |
|
staticprivateinherited |
◆ s_seqnoBit
const int LVL1BS::L1CaloSubBlock::s_seqnoBit = 16 |
|
staticprivateinherited |
◆ s_seqnoMask
const uint32_t LVL1BS::L1CaloSubBlock::s_seqnoMask = 0x3f |
|
staticprivateinherited |
◆ s_slices1Bit
const int LVL1BS::L1CaloSubBlock::s_slices1Bit = 0 |
|
staticprivateinherited |
◆ s_slices1Mask
const uint32_t LVL1BS::L1CaloSubBlock::s_slices1Mask = 0x7 |
|
staticprivateinherited |
◆ s_slices2Bit
const int LVL1BS::L1CaloSubBlock::s_slices2Bit = 3 |
|
staticprivateinherited |
◆ s_slices2Mask
const uint32_t LVL1BS::L1CaloSubBlock::s_slices2Mask = 0x1f |
|
staticprivateinherited |
◆ s_statusBit
const int LVL1BS::L1CaloSubBlock::s_statusBit = 28 |
|
staticprivateinherited |
◆ s_statusMask
const uint32_t LVL1BS::L1CaloSubBlock::s_statusMask = 0x1 |
|
staticprivateinherited |
◆ s_statusVal
const uint32_t LVL1BS::L1CaloSubBlock::s_statusVal = 0x1 |
|
staticprivateinherited |
◆ s_timeoutBit
const int LVL1BS::PpmSubBlockV1::s_timeoutBit = 5 |
|
staticprivate |
◆ s_upstreamErrorBit
const int LVL1BS::L1CaloSubBlock::s_upstreamErrorBit = 4 |
|
staticprivateinherited |
◆ s_versionBit
const int LVL1BS::L1CaloSubBlock::s_versionBit = 25 |
|
staticprivateinherited |
◆ s_versionMask
const uint32_t LVL1BS::L1CaloSubBlock::s_versionMask = 0x7 |
|
staticprivateinherited |
◆ s_wordIdBit
const int LVL1BS::L1CaloSubBlock::s_wordIdBit = 28 |
|
staticprivateinherited |
◆ s_wordIdMask
const uint32_t LVL1BS::L1CaloSubBlock::s_wordIdMask = 0xf |
|
staticprivateinherited |
◆ s_wordIdVal
const uint32_t LVL1BS::PpmSubBlockV1::s_wordIdVal = 0xc |
|
staticprivate |
◆ s_wordLen
const int LVL1BS::PpmSubBlockV1::s_wordLen = 16 |
|
staticprivate |
The documentation for this class was generated from the following files:
static const uint32_t s_bcidFadcMask
void setBunchCrossing(int bc)
Set the Bunch Crossing number (neutral format only)
static const int s_dataBits
static const uint32_t s_lutMask
static const int s_channelDisabledBit
static const int s_moduleBit
static const int s_bcnMismatchBit
static const int s_daqOverflowBit
bool packUncompressedData()
Pack uncompressed data.
@ UNPACK_COMPRESSION_VERSION
static const int s_bunchCrossingBits
static const uint32_t s_wordIdVal
void clear()
Clear all data.
std::vector< uint32_t > m_compStats
Vector for compression statistics.
static const int s_asicChannels
bool unpackUncompressedData()
Unpack uncompressed data.
static const int s_timeoutBit
static const uint32_t s_wordIdMask
void packerNeutral(int pin, uint32_t datum, int nbits)
Pack given neutral data from given pin.
static const int s_glinkPinParityBit
static const int s_failingBcnBit
static const int s_asicFullBit
std::vector< uint32_t >::const_iterator m_dataPosEnd
static const int s_formatBit
static bool pack(PpmSubBlockV1 &subBlock)
Pack data.
static const int s_glinkParityBit
int asic(int chan) const
Return the ASIC channel corresponding to a data channel.
static const uint32_t s_glinkDavSet
void unpackerInit()
Initialise unpacker.
static const int s_glinkDownBit
int run(int argc, char *argv[])
static const uint32_t s_slices1Mask
static const uint32_t s_failingBcnMask
static const int s_fadcBit
void setHeader(int wordId, int version, int format, int seqno, int crate, int module, int slices2, int slices1)
Store header data.
static const uint32_t s_headerVal
static const uint32_t s_slices2Mask
static const uint32_t s_statusVal
void packerFlush()
Flush the current data word padded with zeros.
int bunchCrossing() const
Return the Bunch Crossing number (neutral format only)
bool upstreamError() const
constexpr auto lut(Generator &&f)
std::vector< uint32_t > m_datamap
Vector for intermediate data.
static const int s_errorBits
static const int s_mcmAbsentBit
static const int s_channels
static const int s_bunchMismatchBit
static const uint32_t s_seqnoMask
static const uint32_t s_moduleMask
const DataType * PointerType
static const int s_upstreamErrorBit
static const uint32_t s_bcidLutMask
void packer(uint32_t datum, int nbits)
Pack given data into given number of bits.
uint32_t failingBCN() const
std::vector< uint32_t > m_data
Sub-Block data.
@ UNPACK_COMPRESSION_SLICES
bool glinkTimeout() const
bool unpackUncompressedErrors()
Unpack uncompressed error data.
static const int s_statusBit
static const int s_ppmCrates
std::vector< int > m_currentPinBit
bool unpackerNeutralParityError(int pin)
Unpack and test G-Link parity bit for given pin.
int m_unpackError
Unpacking error code.
static const int s_eventMismatchBit
bool unpackNeutral()
Unpack neutral data.
int pin(int chan) const
Return the G-Link pin corresponding to a data channel.
int m_bunchCrossing
Bunch Crossing number (neutral format only)
uint32_t unpacker(int nbits)
Unpack given number of bits of data.
static const int s_wordLen
static const uint32_t s_maxStreamedMask
static const int s_fpgaCorruptBit
bool glinkProtocol() const
static SubBlockWordType wordType(uint32_t word)
Word identification.
static const int s_bcidFadcBit
std::vector< int > m_oddParity
bool packUncompressedErrors()
Pack uncompressed error data.
static const int s_glinkProtocolBit
static const uint32_t s_errorMask
bool packNeutral()
Pack neutral data.
bool unpackerSuccess() const
Return unpacker success flag.
static const int s_lutBit
static const uint32_t s_versionMask
static const uint32_t s_fadcMask
static const int s_slices1Bit
size_t dataSize(TDA::PayloadIterator start)
Size in bytes of the buffer that is needed to decode next fragment data content.
int dataWords() const
Return number of data words.
static const uint32_t s_formatMask
uint32_t m_trailer
Sub-Block Status Trailer.
static const int s_seqnoBit
std::vector< uint32_t >::const_iterator m_dataPos
static const int s_headerBit
uint32_t m_header
Sub-Block Header.
static const int s_maxPins
def init(v_theApp, v_rootStream=None)
static const uint32_t s_statusMask
static bool unpack(PpmSubBlockV1 &subBlock)
Unpack data.
static const int s_maxStreamedBits
static const uint32_t s_headerMask
bool channelDisabled(int chan) const
void setUnpackErrorCode(int code)
Set the unpacking error code.
std::vector< uint32_t > m_unpackingMasks
Unpacking masks.
int parityBit(int init, uint32_t datum, int nbits) const
Return the parity bit for given data.
bool errorBit(int pin, int bit) const
Error bit extraction.
static const int s_glinkPins
static const int s_wordIdBit
static const int s_crateBit
int channelsPerSubBlock()
static const int s_bcidLutBit
uint32_t unpackerNeutral(int pin, int nbits)
Unpack given number of bits of neutral data for given pin.
static const int s_slices2Bit
static const uint32_t s_crateMask
static const int s_errorMarker
int m_dataWords
Current number of data words.
std::vector< uint32_t > m_errormap
Vector for intermediate error data.
void setStatus(uint32_t failingBCN, bool glinkTimeout, bool glinkDown, bool upstreamError, bool daqOverflow, bool bcnMismatch, bool glinkProtocol, bool glinkParity)
Store error status trailer.
static const int s_versionBit
void packerNeutralParity(int pin)
Pack current G-Link parity bit for given pin.
static const int s_glinkTimeoutBit