|
ATLAS Offline Software
|
Sub-Block class for CPM RoI data (neutral format).
More...
#include <CpmRoiSubBlockV1.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
} |
|
|
| CpmRoiSubBlockV1 () |
|
| ~CpmRoiSubBlockV1 () |
|
void | clear () |
| Clear all data. More...
|
|
void | setRoiHeader (int version, int crate, int module) |
| Store header. More...
|
|
void | fillRoi (LVL1::CPMRoI roi) |
| Store RoI. More...
|
|
LVL1::CPMRoI | roi (int chip, int loc) const |
| Return RoI for given chip and location (left/right) More...
|
|
bool | pack () |
| Pack data. More...
|
|
bool | unpack () |
| Unpack data. 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 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 CPM RoI data (neutral format).
Based on "ATLAS Level-1 Calorimeter Trigger Read-out Driver" Version 1.09h
- Author
- Peter Faulkner
Definition at line 26 of file CpmRoiSubBlockV1.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.
◆ CpmRoiSubBlockV1()
LVL1BS::CpmRoiSubBlockV1::CpmRoiSubBlockV1 |
( |
| ) |
|
◆ ~CpmRoiSubBlockV1()
LVL1BS::CpmRoiSubBlockV1::~CpmRoiSubBlockV1 |
( |
| ) |
|
◆ 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.
◆ clear()
void LVL1BS::CpmRoiSubBlockV1::clear |
( |
| ) |
|
◆ 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 |
◆ failingBCN()
uint32_t LVL1BS::L1CaloSubBlock::failingBCN |
( |
| ) |
const |
|
inlineinherited |
◆ fillRoi()
◆ format() [1/2]
int LVL1BS::L1CaloSubBlock::format |
( |
| ) |
const |
|
inlineinherited |
◆ format() [2/2]
int LVL1BS::L1CaloSubBlock::format |
( |
uint32_t |
word | ) |
|
|
staticinherited |
◆ glinkDown()
bool LVL1BS::L1CaloSubBlock::glinkDown |
( |
| ) |
const |
|
inlineinherited |
◆ glinkParity()
bool LVL1BS::L1CaloSubBlock::glinkParity |
( |
| ) |
const |
|
inlineinherited |
◆ glinkProtocol()
bool LVL1BS::L1CaloSubBlock::glinkProtocol |
( |
| ) |
const |
|
inlineinherited |
◆ glinkTimeout()
bool LVL1BS::L1CaloSubBlock::glinkTimeout |
( |
| ) |
const |
|
inlineinherited |
◆ 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::CpmRoiSubBlockV1::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::CpmRoiSubBlockV1::packNeutral |
( |
| ) |
|
|
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;
◆ 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);
◆ roi()
LVL1::CPMRoI LVL1BS::CpmRoiSubBlockV1::roi |
( |
int |
chip, |
|
|
int |
loc |
|
) |
| const |
Return RoI for given chip and location (left/right)
Definition at line 62 of file CpmRoiSubBlockV1.cxx.
64 const int pin = (chip << 1) | (loc & 0
x1);
◆ 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.
◆ 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);
◆ 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 |
◆ setRoiHeader()
void LVL1BS::CpmRoiSubBlockV1::setRoiHeader |
( |
int |
version, |
|
|
int |
crate, |
|
|
int |
module |
|
) |
| |
◆ 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 |
◆ subStatus()
uint32_t LVL1BS::L1CaloSubBlock::subStatus |
( |
| ) |
const |
|
inlineinherited |
◆ unpack()
bool LVL1BS::CpmRoiSubBlockV1::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::CpmRoiSubBlockV1::unpackNeutral |
( |
| ) |
|
|
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_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_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_header
uint32_t LVL1BS::L1CaloSubBlock::m_header |
|
privateinherited |
◆ 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_roiData
std::vector<LVL1::CPMRoI> LVL1BS::CpmRoiSubBlockV1::m_roiData |
|
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_bcnMismatchBit
const int LVL1BS::L1CaloSubBlock::s_bcnMismatchBit = 2 |
|
staticprivateinherited |
◆ s_bunchCrossingBits
const int LVL1BS::CpmRoiSubBlockV1::s_bunchCrossingBits = 12 |
|
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_errorLen
const int LVL1BS::CpmRoiSubBlockV1::s_errorLen = 2 |
|
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_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_glinkPins
const int LVL1BS::CpmRoiSubBlockV1::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_hitsLen
const int LVL1BS::CpmRoiSubBlockV1::s_hitsLen = 16 |
|
staticprivate |
◆ s_locationLen
const int LVL1BS::CpmRoiSubBlockV1::s_locationLen = 2 |
|
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_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_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 int LVL1BS::CpmRoiSubBlockV1::s_wordIdVal = 0xc |
|
staticprivate |
The documentation for this class was generated from the following files:
void setBunchCrossing(int bc)
Set the Bunch Crossing number (neutral format only)
static const int s_moduleBit
static const int s_bcnMismatchBit
int location() const
Return location (RoI local coords) (0-7)
static const int s_daqOverflowBit
@ UNPACK_COMPRESSION_VERSION
static const int s_locationLen
int chip() const
Return CP chip number (0-7)
void clear()
Clear all data.
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_failingBcnBit
static const int s_errorLen
std::vector< uint32_t >::const_iterator m_dataPosEnd
static const int s_formatBit
static const int s_glinkParityBit
static const uint32_t s_glinkDavSet
static const int s_glinkDownBit
static const int s_wordIdVal
Header word ID.
static const uint32_t s_slices1Mask
static const uint32_t s_failingBcnMask
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
int hits() const
Return hit thresholds map.
static const uint32_t s_slices2Mask
static const uint32_t s_statusVal
int bunchCrossing() const
Return the Bunch Crossing number (neutral format only)
bool upstreamError() const
static const uint32_t s_seqnoMask
static const uint32_t s_moduleMask
const DataType * PointerType
static const int s_upstreamErrorBit
LVL1::CPMRoI roi(int chip, int loc) const
Return RoI for given chip and location (left/right)
uint32_t failingBCN() const
std::vector< uint32_t > m_data
Sub-Block data.
@ UNPACK_COMPRESSION_SLICES
int cpm() const
Return CPM number (1-14)
bool glinkTimeout() const
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.
int m_bunchCrossing
Bunch Crossing number (neutral format only)
bool unpackNeutral()
Unpack neutral data.
static const uint32_t s_maxStreamedMask
int error() const
Return error flags (bit 0 Saturation, bit 1 Parity)
bool glinkProtocol() const
static SubBlockWordType wordType(uint32_t word)
Word identification.
std::vector< int > m_oddParity
static const int s_glinkProtocolBit
static const int s_hitsLen
static const int s_glinkPins
bool unpackerSuccess() const
Return unpacker success flag.
static const uint32_t s_versionMask
static const int s_slices1Bit
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)
std::vector< LVL1::CPMRoI > m_roiData
RoI words.
static const uint32_t s_statusMask
static const int s_maxStreamedBits
static const uint32_t s_headerMask
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.
static const int s_wordIdBit
static const int s_crateBit
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
bool packNeutral()
Pack neutral data.
static const int s_bunchCrossingBits
int crate() const
Return crate number (0-1)
int m_dataWords
Current number of data words.
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
CPMRoI_v1 CPMRoI
Define the latest version of the CPMRoI class.
void packerNeutralParity(int pin)
Pack current G-Link parity bit for given pin.
static const int s_glinkTimeoutBit