Analysis Software
Documentation for sPHENIX simulation software
|
support for the GBT single link data More...
#include <online_distribution/blob/master/newbasic/mvtx_decoder/GBTLink.h>
Public Types | |
enum | CollectedDataStatus : int8_t { None, AbortedOnError, StoppedOnEndOfData, DataSeen } |
Public Member Functions | |
GBTLink ()=default | |
GBTLink (uint16_t _flx, uint16_t _fee) | |
void | clear (bool resetStat=true, bool resetTFRaw=false) |
CollectedDataStatus | collectROFCableData () |
void | cacheData (size_t start, size_t sz) |
void | clearCableData () |
int | readFlxWord (GBTWord *gbtwords, uint16_t &w16) |
int | decode_lane (const uint8_t chipId, PayLoadCont &buffer) |
void | getRowCol (const uint8_t reg, const uint16_t addr, uint16_t &row, uint16_t &col) |
void | addHit (const uint8_t laneId, const uint8_t bc, uint8_t reg, const uint16_t addr) |
void | check_APE (const uint8_t &chipId, const uint8_t &dataC) |
void | AlpideByteError (const uint8_t &chipId, PayLoadCont &buffer) |
void | PrintFlxWord (std::ostream &os, uint8_t *pos) |
void | PrintBlock (std::ostream &os, uint8_t *pos, size_t n) |
Public Attributes | |
CollectedDataStatus | status = None |
uint16_t | flxId = 0 |
uint16_t | feeId = 0 |
PayLoadCont | data |
std::array< PayLoadCont, MaxCablesPerLink > | cableData |
uint32_t | hbfEntry = 0 |
InteractionRecord | ir = {} |
GBTLinkDecodingStat | statistics |
bool | hbf_found = false |
uint32_t | hbf_length = 0 |
uint32_t | prev_pck_cnt = 0 |
uint32_t | hbf_count = 0 |
PayLoadSG | rawData |
size_t | dataOffset = 0 |
std::vector< InteractionRecord > | mL1TrgTime |
std::vector< TRGData > | mTrgData |
std::vector< mvtx_hit * > | hit_vector = {} |
Static Public Attributes | |
static constexpr int | RawBufferMargin = 5000000 |
static constexpr int | RawBufferSize = 10000000 + 2 * RawBufferMargin |
static constexpr uint8_t | MaxCablesPerLink = 3 |
support for the GBT single link data
Definition at line 72 of file GBTLink.h.
View newest version in sPHENIX GitHub at line 72 of file GBTLink.h
enum mvtx::GBTLink::CollectedDataStatus : int8_t |
|
default |
GBTLink::GBTLink | ( | uint16_t | _flx, |
uint16_t | _fee | ||
) |
======================================================================
Definition at line 21 of file GBTLink.cxx.
View newest version in sPHENIX GitHub at line 21 of file GBTLink.cxx
References data, mvtx::PayLoadCont::expand(), and RawBufferSize.
|
inline |
|
inline |
Definition at line 208 of file GBTLink.h.
View newest version in sPHENIX GitHub at line 208 of file GBTLink.h
References mvtx::PayLoadCont::clear(), and mvtx::PayLoadCont::next().
|
inline |
|
inline |
Definition at line 41 of file GBTLink.cxx.
View newest version in sPHENIX GitHub at line 41 of file GBTLink.cxx
References mvtx::PayLoadSG::clear(), mvtx::PayLoadCont::clear(), mvtx::GBTLinkDecodingStat::clear(), data, dataOffset, hbf_count, hbfEntry, hit_vector, mvtx::PayLoadCont::isEmpty(), mL1TrgTime, mvtx::PayLoadCont::moveUnusedToHead(), mTrgData, None, rawData, statistics, and status.
|
inline |
Definition at line 132 of file GBTLink.h.
View newest version in sPHENIX GitHub at line 132 of file GBTLink.h
References configureMap::data.
|
inline |
Definition at line 247 of file GBTLink.h.
View newest version in sPHENIX GitHub at line 247 of file GBTLink.h
References assert, configureMap::data, mvtx_utils::RdhExt_t::decode(), distance(), mvtx_utils::FLXWordLength, i, log_error, mvtx::GBTLinkDecodingStat::nBitMap, mvtx_utils::RdhExt_t::packetCounter, mvtx_utils::RdhExt_t::pageSize, rawData, utils::status, mvtx_utils::RdhExt_t::stopBit, and mvtx_utils::RdhExt_t::trgType.
|
inline |
Definition at line 456 of file GBTLink.h.
View newest version in sPHENIX GitHub at line 456 of file GBTLink.h
References assert, mvtx::PayLoadCont::getOffset(), mvtx::PayLoadCont::getSize(), mvtx::PayLoadCont::getUnusedSize(), mvtx::PayLoadCont::isEmpty(), log_error, mvtx::PayLoadCont::next(), and true.
|
inline |
|
inline |
|
inline |
int GBTLink::readFlxWord | ( | GBTWord * | gbtwords, |
uint16_t & | w16 | ||
) |
Definition at line 77 of file GBTLink.cxx.
View newest version in sPHENIX GitHub at line 77 of file GBTLink.cxx
References data, dataOffset, mvtx::PayLoadCont::getPtr(), and k.
std::array<PayLoadCont, MaxCablesPerLink> mvtx::GBTLink::cableData |
PayLoadCont mvtx::GBTLink::data |
size_t mvtx::GBTLink::dataOffset = 0 |
uint16_t mvtx::GBTLink::feeId = 0 |
uint16_t mvtx::GBTLink::flxId = 0 |
uint32_t mvtx::GBTLink::hbf_count = 0 |
bool mvtx::GBTLink::hbf_found = false |
uint32_t mvtx::GBTLink::hbf_length = 0 |
uint32_t mvtx::GBTLink::hbfEntry = 0 |
std::vector<mvtx_hit *> mvtx::GBTLink::hit_vector = {} |
InteractionRecord mvtx::GBTLink::ir = {} |
|
static |
std::vector<InteractionRecord> mvtx::GBTLink::mL1TrgTime |
std::vector<TRGData> mvtx::GBTLink::mTrgData |
uint32_t mvtx::GBTLink::prev_pck_cnt = 0 |
|
static |
|
static |
PayLoadSG mvtx::GBTLink::rawData |
GBTLinkDecodingStat mvtx::GBTLink::statistics |
CollectedDataStatus mvtx::GBTLink::status = None |