Project
Loading...
Searching...
No Matches
o2::itsmft::RUDecodeData Struct Reference

#include <RUDecodeData.h>

Public Member Functions

 RUDecodeData ()
 
void clear ()
 
void clearSeenChipIDs ()
 
void setROFInfo (ChipPixelData *chipData, const GBTLink *lnk)
 
template<class Mapping >
int decodeROF (const Mapping &mp, const o2::InteractionRecord ir, bool verifyDecoder)
 
void fillChipStatistics (int icab, const ChipPixelData *chipData)
 
void dumpcabledata (int icab)
 
bool checkLinkInSync (int icab, const o2::InteractionRecord ir)
 
 ClassDefNV (RUDecodeData, 2)
 

Public Attributes

std::array< PayLoadCont, MaxCablesPerRUcableData {}
 
std::vector< o2::itsmft::ChipPixelDatachipsData {}
 
std::map< int, ChipPixelData * > seenChips {}
 
std::vector< uint16_t > seenChipIDsInCable {}
 
std::vector< uint16_t > seenChipIDs {}
 
std::array< int, MaxLinksPerRUlinks {}
 
std::array< uint8_t, MaxCablesPerRUcableHWID {}
 
std::array< uint8_t, MaxCablesPerRUcableLinkID {}
 
std::array< GBTLink *, MaxCablesPerRUcableLinkPtr {}
 
std::unordered_map< uint64_t, uint32_t > linkHBFToDump {}
 
int ruSWID = -1
 
int nChipsFired = 0
 
int lastChipChecked = 0
 
int nNonEmptyLinks = 0
 
int nLinks = 0
 
int nLinksDone = 0
 
int verbosity = 0
 
bool ROFRampUpStage = false
 
GBTCalibData calibData {}
 
std::unordered_map< uint32_t, std::pair< uint32_t, uint32_t > > chipErrorsTF {}
 
std::vector< ErrorMessageerrMsgVecTF
 
const RUInforuInfo = nullptr
 

Static Public Attributes

static constexpr int MaxCablesPerRU = 28
 
static constexpr int MaxChipsPerRU = 196
 
static constexpr int MaxLinksPerRU = 3
 

Detailed Description

Definition at line 31 of file RUDecodeData.h.

Constructor & Destructor Documentation

◆ RUDecodeData()

o2::itsmft::RUDecodeData::RUDecodeData ( )
inline

Definition at line 61 of file RUDecodeData.h.

Member Function Documentation

◆ checkLinkInSync()

bool o2::itsmft::RUDecodeData::checkLinkInSync ( int  icab,
const o2::InteractionRecord  ir 
)

check if the link data is in sync with majority

Definition at line 102 of file RUDecodeData.cxx.

◆ ClassDefNV()

o2::itsmft::RUDecodeData::ClassDefNV ( RUDecodeData  ,
 
)

◆ clear()

void o2::itsmft::RUDecodeData::clear ( )

reset RU and its links

Definition at line 32 of file RUDecodeData.cxx.

◆ clearSeenChipIDs()

void o2::itsmft::RUDecodeData::clearSeenChipIDs ( )
inline

Definition at line 66 of file RUDecodeData.h.

◆ decodeROF()

template<class Mapping >
int o2::itsmft::RUDecodeData::decodeROF ( const Mapping mp,
const o2::InteractionRecord  ir,
bool  verifyDecoder 
)

decode single readout frame, the cable's data must be filled in advance via GBTLink::collectROFCableData

Definition at line 82 of file RUDecodeData.h.

◆ dumpcabledata()

void o2::itsmft::RUDecodeData::dumpcabledata ( int  icab)

dump cable data for debugging

Definition at line 81 of file RUDecodeData.cxx.

◆ fillChipStatistics()

void o2::itsmft::RUDecodeData::fillChipStatistics ( int  icab,
const ChipPixelData chipData 
)

fill chip decoding statistics

Definition at line 55 of file RUDecodeData.cxx.

◆ setROFInfo()

void o2::itsmft::RUDecodeData::setROFInfo ( ChipPixelData chipData,
const GBTLink lnk 
)

attach ROF-related info to fired chip. This method has to be in the cxx to avoid explicit dependence of the RUDecodData on GBTLink class

Definition at line 47 of file RUDecodeData.cxx.

Member Data Documentation

◆ cableData

std::array<PayLoadCont, MaxCablesPerRU> o2::itsmft::RUDecodeData::cableData {}

Definition at line 37 of file RUDecodeData.h.

◆ cableHWID

std::array<uint8_t, MaxCablesPerRU> o2::itsmft::RUDecodeData::cableHWID {}

Definition at line 43 of file RUDecodeData.h.

◆ cableLinkID

std::array<uint8_t, MaxCablesPerRU> o2::itsmft::RUDecodeData::cableLinkID {}

Definition at line 44 of file RUDecodeData.h.

◆ cableLinkPtr

std::array<GBTLink*, MaxCablesPerRU> o2::itsmft::RUDecodeData::cableLinkPtr {}

Definition at line 45 of file RUDecodeData.h.

◆ calibData

GBTCalibData o2::itsmft::RUDecodeData::calibData {}

Definition at line 55 of file RUDecodeData.h.

◆ chipErrorsTF

std::unordered_map<uint32_t, std::pair<uint32_t, uint32_t> > o2::itsmft::RUDecodeData::chipErrorsTF {}

Definition at line 56 of file RUDecodeData.h.

◆ chipsData

std::vector<o2::itsmft::ChipPixelData> o2::itsmft::RUDecodeData::chipsData {}

Definition at line 38 of file RUDecodeData.h.

◆ errMsgVecTF

std::vector<ErrorMessage> o2::itsmft::RUDecodeData::errMsgVecTF

Definition at line 57 of file RUDecodeData.h.

◆ lastChipChecked

int o2::itsmft::RUDecodeData::lastChipChecked = 0

Definition at line 49 of file RUDecodeData.h.

◆ linkHBFToDump

std::unordered_map<uint64_t, uint32_t> o2::itsmft::RUDecodeData::linkHBFToDump {}

Definition at line 46 of file RUDecodeData.h.

◆ links

std::array<int, MaxLinksPerRU> o2::itsmft::RUDecodeData::links {}

Definition at line 42 of file RUDecodeData.h.

◆ MaxCablesPerRU

constexpr int o2::itsmft::RUDecodeData::MaxCablesPerRU = 28
staticconstexpr

Definition at line 33 of file RUDecodeData.h.

◆ MaxChipsPerRU

constexpr int o2::itsmft::RUDecodeData::MaxChipsPerRU = 196
staticconstexpr

Definition at line 34 of file RUDecodeData.h.

◆ MaxLinksPerRU

constexpr int o2::itsmft::RUDecodeData::MaxLinksPerRU = 3
staticconstexpr

Definition at line 35 of file RUDecodeData.h.

◆ nChipsFired

int o2::itsmft::RUDecodeData::nChipsFired = 0

Definition at line 48 of file RUDecodeData.h.

◆ nLinks

int o2::itsmft::RUDecodeData::nLinks = 0

Definition at line 51 of file RUDecodeData.h.

◆ nLinksDone

int o2::itsmft::RUDecodeData::nLinksDone = 0

Definition at line 52 of file RUDecodeData.h.

◆ nNonEmptyLinks

int o2::itsmft::RUDecodeData::nNonEmptyLinks = 0

Definition at line 50 of file RUDecodeData.h.

◆ ROFRampUpStage

bool o2::itsmft::RUDecodeData::ROFRampUpStage = false

Definition at line 54 of file RUDecodeData.h.

◆ ruInfo

const RUInfo* o2::itsmft::RUDecodeData::ruInfo = nullptr

Definition at line 59 of file RUDecodeData.h.

◆ ruSWID

int o2::itsmft::RUDecodeData::ruSWID = -1

Definition at line 47 of file RUDecodeData.h.

◆ seenChipIDs

std::vector<uint16_t> o2::itsmft::RUDecodeData::seenChipIDs {}

Definition at line 41 of file RUDecodeData.h.

◆ seenChipIDsInCable

std::vector<uint16_t> o2::itsmft::RUDecodeData::seenChipIDsInCable {}

Definition at line 40 of file RUDecodeData.h.

◆ seenChips

std::map<int, ChipPixelData*> o2::itsmft::RUDecodeData::seenChips {}

Definition at line 39 of file RUDecodeData.h.

◆ verbosity

int o2::itsmft::RUDecodeData::verbosity = 0

Definition at line 53 of file RUDecodeData.h.


The documentation for this struct was generated from the following files: