|
ATLAS Offline Software
|
Sub-Block class for CMX-Energy data post LS1.
More...
#include <CmxEnergySubBlock.h>
|
enum | WordIdType { MODULE_ID,
CRATE_SYSTEM_ID
} |
|
enum | EnergyType { ENERGY_EX,
ENERGY_EY,
ENERGY_ET,
MAX_ENERGY_TYPE
} |
|
enum | HitsType { MISSING_ET_SIG,
MISSING_ET,
SUM_ET,
MAX_HITS_TYPE
} |
|
enum | SourceType { REMOTE,
LOCAL,
TOTAL,
MAX_SOURCE_TYPE
} |
|
enum | SumType { STANDARD,
RESTRICTED_WEIGHTED,
MAX_SUM_TYPE
} |
|
enum | CmxFirmwareCode { CMX_CP = 0,
CMX_JET = 1,
CMX_ENERGY = 2,
CMX_UNKNOWN = 3
} |
|
enum | CmxSummingCode { CRATE = 0,
SYSTEM = 1
} |
|
enum | CmxPositions { LEFT = 0,
RIGHT = 1
} |
|
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
} |
|
|
| CmxEnergySubBlock () |
|
| ~CmxEnergySubBlock () |
|
void | clear () |
| Clear all data. More...
|
|
unsigned int | energy (int slice, int jem, EnergyType eType) const |
| Return energy subsum for given JEM and energy type. More...
|
|
int | error (int slice, int jem, EnergyType eType) const |
| Return energy subsum error for given JEM and energy type. More...
|
|
unsigned int | energy (int slice, SourceType source, SumType sType, EnergyType eType) const |
| Return energy subsum for given source, sum type and energy type. More...
|
|
int | error (int slice, SourceType source, SumType sType, EnergyType eType) const |
| Return energy subsum error for given source, sum type and energy type. More...
|
|
unsigned int | hits (int slice, HitsType hType, SumType sType) const |
| Return hits map for given hits type and sum type. More...
|
|
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. More...
|
|
void | setSubsums (int slice, SourceType source, SumType sType, unsigned int ex, unsigned int ey, unsigned int et, int exError, int eyError, int etError) |
| Store energy subsums and errors for given source and sum type. More...
|
|
void | setEtHits (int slice, HitsType hType, SumType sType, unsigned int map) |
| Store hits map for given hits type and sum type. More...
|
|
bool | pack () |
| Pack data. More...
|
|
bool | unpack () |
| Unpack data. More...
|
|
void | setCmxHeader (int version, int format, int slice, int crate, int summing, int firmware, int position, int timeslices) |
| Store CMX header. More...
|
|
int | cmxSumming () const |
|
int | cmxFirmware () const |
|
int | cmxPosition () const |
|
int | timeslices () const |
|
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 CmxFirmwareCode | cmxType (uint32_t word) |
| CMX differentiation (CMX_CP, CMX_JET, or CMX_ENERGY) More...
|
|
static bool | cmxBlock (uint32_t word) |
| Determine if header word corresponds to CMX. 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 CMX-Energy data post LS1.
Based on "ATLAS Level-1 Calorimeter Trigger Read-out Driver" Version X.xxx //<<== CHECK
- Author
- Peter Faulkner
Definition at line 23 of file CmxEnergySubBlock.h.
◆ CmxFirmwareCode
Enumerator |
---|
CMX_CP | |
CMX_JET | |
CMX_ENERGY | |
CMX_UNKNOWN | |
Definition at line 25 of file CmxSubBlock.h.
◆ CmxPositions
◆ CmxSummingCode
◆ 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.
◆ EnergyType
Enumerator |
---|
ENERGY_EX | |
ENERGY_EY | |
ENERGY_ET | |
MAX_ENERGY_TYPE | |
Definition at line 27 of file CmxEnergySubBlock.h.
◆ HitsType
Enumerator |
---|
MISSING_ET_SIG | |
MISSING_ET | |
SUM_ET | |
MAX_HITS_TYPE | |
Definition at line 28 of file CmxEnergySubBlock.h.
◆ SourceType
◆ SubBlockWordType
◆ SumType
◆ 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.
◆ WordIdType
◆ CmxEnergySubBlock()
LVL1BS::CmxEnergySubBlock::CmxEnergySubBlock |
( |
| ) |
|
◆ ~CmxEnergySubBlock()
LVL1BS::CmxEnergySubBlock::~CmxEnergySubBlock |
( |
| ) |
|
◆ 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::CmxEnergySubBlock::clear |
( |
| ) |
|
◆ cmxBlock()
bool LVL1BS::CmxSubBlock::cmxBlock |
( |
uint32_t |
word | ) |
|
|
staticinherited |
Determine if header word corresponds to CMX.
Definition at line 84 of file CmxSubBlock.cxx.
◆ cmxFirmware()
int LVL1BS::CmxSubBlock::cmxFirmware |
( |
| ) |
const |
|
inlineinherited |
◆ cmxPosition()
int LVL1BS::CmxSubBlock::cmxPosition |
( |
| ) |
const |
|
inlineinherited |
◆ cmxSumming()
int LVL1BS::CmxSubBlock::cmxSumming |
( |
| ) |
const |
|
inlineinherited |
◆ cmxType()
CMX differentiation (CMX_CP, CMX_JET, or CMX_ENERGY)
Definition at line 60 of file CmxSubBlock.cxx.
◆ 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 |
◆ energy() [1/2]
unsigned int LVL1BS::CmxEnergySubBlock::energy |
( |
int |
slice, |
|
|
int |
jem, |
|
|
EnergyType |
eType |
|
) |
| const |
◆ energy() [2/2]
Return energy subsum for given source, sum type and energy type.
Definition at line 94 of file CmxEnergySubBlock.cxx.
◆ error() [1/2]
int LVL1BS::CmxEnergySubBlock::error |
( |
int |
slice, |
|
|
int |
jem, |
|
|
EnergyType |
eType |
|
) |
| const |
◆ error() [2/2]
Return energy subsum error for given source, sum type and energy type.
Definition at line 109 of file CmxEnergySubBlock.cxx.
122 return (parity << 1) + overflow;
◆ failingBCN()
uint32_t LVL1BS::L1CaloSubBlock::failingBCN |
( |
| ) |
const |
|
inlineinherited |
◆ 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 |
◆ hits()
unsigned int LVL1BS::CmxEnergySubBlock::hits |
( |
int |
slice, |
|
|
HitsType |
hType, |
|
|
SumType |
sType |
|
) |
| const |
Return hits map for given hits type and sum type.
Definition at line 127 of file CmxEnergySubBlock.cxx.
131 unsigned int map = 0;
◆ index()
int LVL1BS::CmxEnergySubBlock::index |
( |
int |
slice, |
|
|
int |
pos |
|
) |
| const |
|
private |
◆ 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::CmxEnergySubBlock::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::CmxEnergySubBlock::packNeutral |
( |
| ) |
|
|
private |
◆ packUncompressed()
bool LVL1BS::CmxEnergySubBlock::packUncompressed |
( |
| ) |
|
|
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);
◆ resize()
void LVL1BS::CmxEnergySubBlock::resize |
( |
| ) |
|
|
private |
◆ 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.
◆ setCmxHeader()
void LVL1BS::CmxSubBlock::setCmxHeader |
( |
int |
version, |
|
|
int |
format, |
|
|
int |
slice, |
|
|
int |
crate, |
|
|
int |
summing, |
|
|
int |
firmware, |
|
|
int |
position, |
|
|
int |
timeslices |
|
) |
| |
|
inherited |
◆ 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);
◆ setEtHits()
void LVL1BS::CmxEnergySubBlock::setEtHits |
( |
int |
slice, |
|
|
HitsType |
hType, |
|
|
SumType |
sType, |
|
|
unsigned int |
map |
|
) |
| |
◆ 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 |
◆ 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.
◆ setSubsums() [1/2]
void LVL1BS::CmxEnergySubBlock::setSubsums |
( |
int |
slice, |
|
|
int |
jem, |
|
|
unsigned int |
ex, |
|
|
unsigned int |
ey, |
|
|
unsigned int |
et, |
|
|
int |
exError, |
|
|
int |
eyError, |
|
|
int |
etError |
|
) |
| |
◆ setSubsums() [2/2]
void LVL1BS::CmxEnergySubBlock::setSubsums |
( |
int |
slice, |
|
|
SourceType |
source, |
|
|
SumType |
sType, |
|
|
unsigned int |
ex, |
|
|
unsigned int |
ey, |
|
|
unsigned int |
et, |
|
|
int |
exError, |
|
|
int |
eyError, |
|
|
int |
etError |
|
) |
| |
Store energy subsums and errors for given source and sum type.
Definition at line 180 of file CmxEnergySubBlock.cxx.
211 if (
energy || overflow || parity) {
◆ 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 |
◆ timeslices()
int LVL1BS::CmxSubBlock::timeslices |
( |
| ) |
const |
|
inherited |
◆ unpack()
bool LVL1BS::CmxEnergySubBlock::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::CmxEnergySubBlock::unpackNeutral |
( |
| ) |
|
|
private |
◆ unpackUncompressed()
bool LVL1BS::CmxEnergySubBlock::unpackUncompressed |
( |
| ) |
|
|
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_sumsData
std::vector<uint32_t> LVL1BS::CmxEnergySubBlock::m_sumsData |
|
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::CmxEnergySubBlock::s_bunchCrossingBits = 12 |
|
staticprivate |
◆ s_cmxFirmwareBit
const int LVL1BS::CmxSubBlock::s_cmxFirmwareBit = 1 |
|
staticprivateinherited |
◆ s_cmxFirmwareMask
const uint32_t LVL1BS::CmxSubBlock::s_cmxFirmwareMask = 0x3 |
|
staticprivateinherited |
◆ s_cmxPositionBit
const int LVL1BS::CmxSubBlock::s_cmxPositionBit = 0 |
|
staticprivateinherited |
◆ s_cmxPositionMask
const uint32_t LVL1BS::CmxSubBlock::s_cmxPositionMask = 0x1 |
|
staticprivateinherited |
◆ s_cmxSummingBit
const int LVL1BS::CmxSubBlock::s_cmxSummingBit = 3 |
|
staticprivateinherited |
◆ s_cmxSummingMask
const uint32_t LVL1BS::CmxSubBlock::s_cmxSummingMask = 0x1 |
|
staticprivateinherited |
◆ 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_energyJemMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_energyJemMask = 0x3fff |
|
staticprivate |
◆ s_energySumMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_energySumMask = 0x7fff |
|
staticprivate |
◆ s_energyTypeBit
const int LVL1BS::CmxEnergySubBlock::s_energyTypeBit = 24 |
|
staticprivate |
◆ s_energyTypeJemBit
const int LVL1BS::CmxEnergySubBlock::s_energyTypeJemBit = 23 |
|
staticprivate |
◆ s_energyTypeMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_energyTypeMask = 0x3 |
|
staticprivate |
◆ s_errorBit
const int LVL1BS::CmxEnergySubBlock::s_errorBit = 16 |
|
staticprivate |
◆ s_errorMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_errorMask = 0x1 |
|
staticprivate |
◆ s_etHitMapsBits
const int LVL1BS::CmxEnergySubBlock::s_etHitMapsBits = 8 |
|
staticprivate |
◆ s_etHitsBit
const int LVL1BS::CmxEnergySubBlock::s_etHitsBit = 16 |
|
staticprivate |
◆ s_etHitsMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_etHitsMask = 0xff |
|
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_glinkBitsPerSlice
const int LVL1BS::CmxSubBlock::s_glinkBitsPerSlice = 97 |
|
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_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_jemBit
const int LVL1BS::CmxEnergySubBlock::s_jemBit = 25 |
|
staticprivate |
◆ s_jemMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_jemMask = 0xf |
|
staticprivate |
◆ s_jemPaddingBits
const int LVL1BS::CmxEnergySubBlock::s_jemPaddingBits = 9 |
|
staticprivate |
◆ s_jemSumBits
const int LVL1BS::CmxEnergySubBlock::s_jemSumBits = 14 |
|
staticprivate |
◆ s_maxJems
const int LVL1BS::CmxEnergySubBlock::s_maxJems = 16 |
|
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_maxSums
const int LVL1BS::CmxEnergySubBlock::s_maxSums = 66 |
|
staticprivate |
◆ 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_overflowBit
const int LVL1BS::CmxEnergySubBlock::s_overflowBit = 15 |
|
staticprivate |
◆ s_overflowMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_overflowMask = 0x1 |
|
staticprivate |
◆ s_paddingBits
const int LVL1BS::CmxEnergySubBlock::s_paddingBits = 43 |
|
staticprivate |
◆ 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_sourceBit
const int LVL1BS::CmxEnergySubBlock::s_sourceBit = 27 |
|
staticprivate |
◆ s_sourceMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_sourceMask = 0x3 |
|
staticprivate |
◆ 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_sumBitsEtCrate
const int LVL1BS::CmxEnergySubBlock::s_sumBitsEtCrate = 14 |
|
staticprivate |
◆ s_sumBitsEtSys
const int LVL1BS::CmxEnergySubBlock::s_sumBitsEtSys = 15 |
|
staticprivate |
◆ s_sumBitsExEy
const int LVL1BS::CmxEnergySubBlock::s_sumBitsExEy = 15 |
|
staticprivate |
◆ s_sumTypeBit
const int LVL1BS::CmxEnergySubBlock::s_sumTypeBit = 26 |
|
staticprivate |
◆ s_sumTypeMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_sumTypeMask = 0x1 |
|
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::CmxEnergySubBlock::s_wordIdBit = 29 |
|
staticprivate |
◆ s_wordIdMask
const uint32_t LVL1BS::CmxEnergySubBlock::s_wordIdMask = 0x7 |
|
staticprivate |
◆ s_wordIdVal
const int LVL1BS::CmxSubBlock::s_wordIdVal = 0xe |
|
staticprivateinherited |
◆ s_wordLength
const int LVL1BS::CmxEnergySubBlock::s_wordLength = 32 |
|
staticprivate |
The documentation for this class was generated from the following files:
static const uint32_t s_errorMask
void setBunchCrossing(int bc)
Set the Bunch Crossing number (neutral format only)
static const int s_sourceBit
static const uint32_t s_energySumMask
static const int s_moduleBit
static const int s_bcnMismatchBit
static const int s_daqOverflowBit
@ UNPACK_COMPRESSION_VERSION
void setEtHits(int slice, HitsType hType, SumType sType, unsigned int map)
Store hits map for given hits type and sum type.
void clear()
Clear all data.
static const int s_bunchCrossingBits
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_sumBitsExEy
std::vector< uint32_t >::const_iterator m_dataPosEnd
static const int s_sumTypeBit
static const int s_wordIdBit
static const int s_formatBit
std::vector< uint32_t > m_sumsData
Energy subsums data.
static const int s_glinkParityBit
static const uint32_t s_glinkDavSet
void setGlinkParity(int bit=1)
Set G-Link Parity bit in Sub-status word.
bool unpackUncompressed()
Unpack uncompressed data.
void unpackerInit()
Initialise unpacker.
static const int s_glinkDownBit
static const uint32_t s_cmxPositionMask
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
static const int s_jemSumBits
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
static const int s_sumBitsEtSys
static const int s_sumBitsEtCrate
static const int s_glinkBitsPerSlice
Needed for neutral format.
static const uint32_t s_cmxSummingMask
static const int s_overflowBit
def hType(hist, verbose=False)
static const uint32_t s_seqnoMask
static const uint32_t s_moduleMask
const DataType * PointerType
static const int s_upstreamErrorBit
static const int s_wordIdVal
CMX header word ID.
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
static const uint32_t s_energyJemMask
static const int s_etHitMapsBits
static const int s_statusBit
static const int s_ppmCrates
void setDaqOverflow(int bit=1)
Set DAQ FIFO Overflow bit in Sub-status word.
std::vector< int > m_currentPinBit
static const uint32_t s_energyTypeMask
bool unpackerNeutralParityError(int pin)
Unpack and test G-Link parity bit for given pin.
int m_unpackError
Unpacking error code.
static const int s_jemPaddingBits
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_etHitsMask
static const uint32_t s_sourceMask
static const int s_etHitsBit
int m_bunchCrossing
Bunch Crossing number (neutral format only)
uint32_t unpacker(int nbits)
Unpack given number of bits of data.
static const uint32_t s_maxStreamedMask
static const int s_wordLength
Data word length.
bool glinkProtocol() const
static SubBlockWordType wordType(uint32_t word)
Word identification.
static const int s_cmxSummingBit
static const uint32_t s_sumTypeMask
std::vector< int > m_oddParity
static const int s_glinkProtocolBit
static const int s_cmxPositionBit
static const int s_maxSums
bool packNeutral()
Pack neutral data.
static const int s_errorBit
bool unpackerSuccess() const
Return unpacker success flag.
static const uint32_t s_versionMask
static const int s_maxJems
static const int s_slices1Bit
static const int s_jemBit
int dataWords() const
Return number of data words.
static const uint32_t s_formatMask
static const uint32_t s_overflowMask
static const uint32_t s_cmxFirmwareMask
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_wordIdMask
static const uint32_t s_statusMask
static const int s_cmxFirmwareBit
static const int s_energyTypeBit
bool unpackNeutral()
Unpack neutral data.
int index(int slice, int pos) const
static const int s_energyTypeJemBit
static const int s_maxStreamedBits
unsigned int energy(int slice, int jem, EnergyType eType) const
Return energy subsum for given JEM and energy type.
static const uint32_t s_headerMask
void setUnpackErrorCode(int code)
Set the unpacking error code.
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_jemMask
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
const boost::regex rr(r_r)
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
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.
int error(int slice, int jem, EnergyType eType) const
Return energy subsum error for given JEM and energy type.
static const int s_paddingBits
static const int s_versionBit
bool packUncompressed()
Pack uncompressed data.
void packerNeutralParity(int pin)
Pack current G-Link parity bit for given pin.
static const int s_glinkTimeoutBit