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

support for the GBT single link data More...

#include <GBTLink.h>

Public Types

enum  Format : int8_t { OldFormat , NewFormat , NFormats }
 
enum  RawDataDumps : int { DUMP_NONE , DUMP_HBF , DUMP_TF , DUMP_NTYPES }
 
enum  CollectedDataStatus : int8_t {
  None , AbortedOnError , StoppedOnEndOfData , DataSeen ,
  Recovery , CachedDataExist
}
 
enum  ErrorType : uint8_t {
  NoError = 0x0 , Warning = 0x1 , Skip = 0x2 , Abort = 0x4 ,
  ErrorPrinted = 0x1 << 7
}
 
enum  Verbosity : int8_t {
  Silent = -1 , VerboseErrors , VerboseHeaders , VerboseData ,
  VerboseRawDump
}
 
using RDH = o2::header::RDHAny
 
using RDHUtils = o2::raw::RDHUtils
 

Public Member Functions

 GBTLink ()=default
 
 GBTLink (uint16_t _cru, uint16_t _fee, uint8_t _ep, uint8_t _idInCru=0, uint16_t _chan=0)
 
std::string describe () const
 
void clear (bool resetStat=true, bool resetTFRaw=false)
 
template<class Mapping >
CollectedDataStatus collectROFCableData (const Mapping &chmap)
 
void cacheData (const void *ptr, size_t sz)
 
bool needToPrintError (uint32_t count)
 
void accountLinkRecovery (o2::InteractionRecord ir)
 

Public Attributes

CollectedDataStatus status = None
 
CollectedDataStatus statusInTF = None
 
Verbosity verbosity = VerboseErrors
 
std::vector< PhysTrigger > * extTrigVec = nullptr
 
uint8_t idInRU = 0
 
uint8_t idInCRU = 0
 
uint8_t endPointID = 0
 
bool gbtErrStatUpadated = false
 
uint16_t cruID = 0
 
uint16_t feeID = 0
 
uint16_t channelID = 0
 
uint16_t lastPageSize = 0
 
uint32_t lanes = 0
 
uint32_t subSpec = 0
 
int nTriggers = 0
 
PayLoadCont data
 
int wordLength = o2::itsmft::GBTPaddedWordLength
 
bool alwaysParseTrigger = false
 
bool expectPadding = true
 
bool rofJumpWasSeen = false
 
uint32_t lanesActive = 0
 
uint32_t lanesStop = 0
 
uint32_t lanesTimeOut = 0
 
uint32_t lanesWithData = 0
 
int32_t packetCounter = -1
 
uint32_t trigger = 0
 
uint32_t errorBits = 0
 
uint32_t hbfEntry = 0
 
const RDHlastRDH = nullptr
 
const PayLoadSG::SGPiececurrRawPiece = nullptr
 
o2::InteractionRecord ir
 
o2::InteractionRecord irHBF
 
GBTLinkDecodingStat statistics
 
ChipStat chipStat
 
RUDecodeDataruPtr = nullptr
 
PayLoadSG rawData
 
size_t dataOffset = 0
 

Static Public Attributes

static constexpr int CRUPageAlignment = 16
 

Detailed Description

support for the GBT single link data

Definition at line 56 of file GBTLink.h.

Member Typedef Documentation

◆ RDH

Definition at line 86 of file GBTLink.h.

◆ RDHUtils

Definition at line 87 of file GBTLink.h.

Member Enumeration Documentation

◆ CollectedDataStatus

Enumerator
None 
AbortedOnError 
StoppedOnEndOfData 
DataSeen 
Recovery 
CachedDataExist 

Definition at line 67 of file GBTLink.h.

◆ ErrorType

Enumerator
NoError 
Warning 
Skip 
Abort 
ErrorPrinted 

Definition at line 74 of file GBTLink.h.

◆ Format

Enumerator
OldFormat 
NewFormat 
NFormats 

Definition at line 58 of file GBTLink.h.

◆ RawDataDumps

Enumerator
DUMP_NONE 
DUMP_HBF 
DUMP_TF 
DUMP_NTYPES 

Definition at line 62 of file GBTLink.h.

◆ Verbosity

Enumerator
Silent 
VerboseErrors 
VerboseHeaders 
VerboseData 
VerboseRawDump 

Definition at line 80 of file GBTLink.h.

Constructor & Destructor Documentation

◆ GBTLink() [1/2]

o2::itsmft::GBTLink::GBTLink ( )
default

◆ GBTLink() [2/2]

GBTLink::GBTLink ( uint16_t  _cru,
uint16_t  _fee,
uint8_t  _ep,
uint8_t  _idInCru = 0,
uint16_t  _chan = 0 
)

======================================================================

GBT Link data decoding class


create link with given ids

Definition at line 34 of file GBTLink.cxx.

Member Function Documentation

◆ accountLinkRecovery()

void o2::itsmft::GBTLink::accountLinkRecovery ( o2::InteractionRecord  ir)

◆ cacheData()

void o2::itsmft::GBTLink::cacheData ( const void ptr,
size_t  sz 
)
inline

Definition at line 143 of file GBTLink.h.

◆ clear()

void GBTLink::clear ( bool  resetStat = true,
bool  resetTFRaw = false 
)

reset link

Definition at line 53 of file GBTLink.cxx.

◆ collectROFCableData()

template<class Mapping >
GBTLink::CollectedDataStatus o2::itsmft::GBTLink::collectROFCableData ( const Mapping chmap)

collect cables data for single ROF, return number of real payload words seen, -1 in case of critical error

Definition at line 259 of file GBTLink.h.

◆ describe()

std::string GBTLink::describe ( ) const

create string describing the link

Definition at line 42 of file GBTLink.cxx.

◆ needToPrintError()

bool o2::itsmft::GBTLink::needToPrintError ( uint32_t  count)
inline

Definition at line 185 of file GBTLink.h.

Member Data Documentation

◆ alwaysParseTrigger

bool o2::itsmft::GBTLink::alwaysParseTrigger = false

Definition at line 112 of file GBTLink.h.

◆ channelID

uint16_t o2::itsmft::GBTLink::channelID = 0

Definition at line 100 of file GBTLink.h.

◆ chipStat

ChipStat o2::itsmft::GBTLink::chipStat

Definition at line 128 of file GBTLink.h.

◆ cruID

uint16_t o2::itsmft::GBTLink::cruID = 0

Definition at line 98 of file GBTLink.h.

◆ CRUPageAlignment

constexpr int o2::itsmft::GBTLink::CRUPageAlignment = 16
staticconstexpr

Definition at line 88 of file GBTLink.h.

◆ currRawPiece

const PayLoadSG::SGPiece* o2::itsmft::GBTLink::currRawPiece = nullptr

Definition at line 124 of file GBTLink.h.

◆ data

PayLoadCont o2::itsmft::GBTLink::data

Definition at line 108 of file GBTLink.h.

◆ dataOffset

size_t o2::itsmft::GBTLink::dataOffset = 0

Definition at line 132 of file GBTLink.h.

◆ endPointID

uint8_t o2::itsmft::GBTLink::endPointID = 0

Definition at line 96 of file GBTLink.h.

◆ errorBits

uint32_t o2::itsmft::GBTLink::errorBits = 0

Definition at line 121 of file GBTLink.h.

◆ expectPadding

bool o2::itsmft::GBTLink::expectPadding = true

Definition at line 113 of file GBTLink.h.

◆ extTrigVec

std::vector<PhysTrigger>* o2::itsmft::GBTLink::extTrigVec = nullptr

Definition at line 93 of file GBTLink.h.

◆ feeID

uint16_t o2::itsmft::GBTLink::feeID = 0

Definition at line 99 of file GBTLink.h.

◆ gbtErrStatUpadated

bool o2::itsmft::GBTLink::gbtErrStatUpadated = false

Definition at line 97 of file GBTLink.h.

◆ hbfEntry

uint32_t o2::itsmft::GBTLink::hbfEntry = 0

Definition at line 122 of file GBTLink.h.

◆ idInCRU

uint8_t o2::itsmft::GBTLink::idInCRU = 0

Definition at line 95 of file GBTLink.h.

◆ idInRU

uint8_t o2::itsmft::GBTLink::idInRU = 0

Definition at line 94 of file GBTLink.h.

◆ ir

o2::InteractionRecord o2::itsmft::GBTLink::ir

Definition at line 125 of file GBTLink.h.

◆ irHBF

o2::InteractionRecord o2::itsmft::GBTLink::irHBF

Definition at line 126 of file GBTLink.h.

◆ lanes

uint32_t o2::itsmft::GBTLink::lanes = 0

Definition at line 102 of file GBTLink.h.

◆ lanesActive

uint32_t o2::itsmft::GBTLink::lanesActive = 0

Definition at line 115 of file GBTLink.h.

◆ lanesStop

uint32_t o2::itsmft::GBTLink::lanesStop = 0

Definition at line 116 of file GBTLink.h.

◆ lanesTimeOut

uint32_t o2::itsmft::GBTLink::lanesTimeOut = 0

Definition at line 117 of file GBTLink.h.

◆ lanesWithData

uint32_t o2::itsmft::GBTLink::lanesWithData = 0

Definition at line 118 of file GBTLink.h.

◆ lastPageSize

uint16_t o2::itsmft::GBTLink::lastPageSize = 0

Definition at line 101 of file GBTLink.h.

◆ lastRDH

const RDH* o2::itsmft::GBTLink::lastRDH = nullptr

Definition at line 123 of file GBTLink.h.

◆ nTriggers

int o2::itsmft::GBTLink::nTriggers = 0

Definition at line 105 of file GBTLink.h.

◆ packetCounter

int32_t o2::itsmft::GBTLink::packetCounter = -1

Definition at line 119 of file GBTLink.h.

◆ rawData

PayLoadSG o2::itsmft::GBTLink::rawData

Definition at line 131 of file GBTLink.h.

◆ rofJumpWasSeen

bool o2::itsmft::GBTLink::rofJumpWasSeen = false

Definition at line 114 of file GBTLink.h.

◆ ruPtr

RUDecodeData* o2::itsmft::GBTLink::ruPtr = nullptr

Definition at line 129 of file GBTLink.h.

◆ statistics

GBTLinkDecodingStat o2::itsmft::GBTLink::statistics

Definition at line 127 of file GBTLink.h.

◆ status

CollectedDataStatus o2::itsmft::GBTLink::status = None

Definition at line 89 of file GBTLink.h.

◆ statusInTF

CollectedDataStatus o2::itsmft::GBTLink::statusInTF = None

Definition at line 90 of file GBTLink.h.

◆ subSpec

uint32_t o2::itsmft::GBTLink::subSpec = 0

Definition at line 103 of file GBTLink.h.

◆ trigger

uint32_t o2::itsmft::GBTLink::trigger = 0

Definition at line 120 of file GBTLink.h.

◆ verbosity

Verbosity o2::itsmft::GBTLink::verbosity = VerboseErrors

Definition at line 92 of file GBTLink.h.

◆ wordLength

int o2::itsmft::GBTLink::wordLength = o2::itsmft::GBTPaddedWordLength

Definition at line 111 of file GBTLink.h.


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