|
CbmRoot
|
#include <CbmTrdUnpackAlgoR.h>
Public Member Functions | |
| CbmTrdUnpackAlgoR () | |
| Create the Cbm Trd Unpack AlgoBase object. | |
| virtual | ~CbmTrdUnpackAlgoR () |
| Destroy the Cbm Trd Unpack Task object. | |
| CbmTrdUnpackAlgoR (const CbmTrdUnpackAlgoR &)=delete | |
| Copy constructor - not implemented. | |
| CbmTrdUnpackAlgoR & | operator= (const CbmTrdUnpackAlgoR &)=delete |
| Assignment operator - not implemented. | |
| virtual std::vector< std::pair< std::string, std::shared_ptr< FairParGenericSet > > > * | GetParContainerRequest (std::string geoTag, uint32_t runId) |
| Get the requested parameter containers. Return the required parameter containers together with the paths to the ascii files to. | |
| void | SetMonitor (std::shared_ptr< CbmTrdUnpackMonitor > monitor) |
| Set a predefined monitor. | |
| void | SetRawToDigiMethod (std::shared_ptr< CbmTrdRawToDigiBaseR > value) |
| Set the Raw To Digi Method. | |
| void | SetSpadicObject (std::shared_ptr< CbmTrdSpadic > value) |
| Set the Spadic Object. | |
| void | SetElinkTimeOffsetMap (std::map< uint32_t, std::vector< int32_t > > map) |
| Register a time offeset to be substracted from the digis which come from a specific CRI. | |
| int32_t | GetElinkTimeOffset (uint32_t criid, uint8_t elinkid) |
| Get the time offeset to be substracted from the digis which come from a specific CRI. | |
Protected Member Functions | |
| Spadic::MsInfoType | digestBufInfoFlags (const uint32_t frame, uint16_t criId, uint8_t crobId, uint16_t elinkId) |
| Digest the aditional flags stored in the 4 "cccc" bits of the EPO messages. | |
| void | digestInfoMsg (const uint32_t frame, uint16_t criId, uint8_t crobId, uint16_t elinkId) |
| Digest a info message run all default information forwarding from the msg. | |
| void | digestMsFlags (const uint16_t flags, uint16_t criId, uint8_t crobId) |
| Digest the flags of the currently unpacked micro-Slice. | |
| int16_t | extractSample (size_t *adcbuffer, size_t *nadcbits) |
| Extract all adc samples from a given adcbuffer container. | |
| std::float_t | extractAvgSample (size_t *adcbuffer, size_t *nadcbits) |
| Extract the baseline average sample from a given adcbuffer. Depending on the Spadic settings sample-0 is a plain sample or the averaged baseline calculation. The latter is not a 9 bit signed integer, but a 9 bit floating point number 7 digits before the point and 2 afterwards. | |
| void | finishDerived () |
| Additional explicit finish function of this algo implementation. | |
| Spadic::MsInfoType | getInfoType (const uint32_t frame, uint16_t criId, uint8_t crobId, uint16_t elinkId) |
| Identify the InfoType of a 64bit InfoMessage word inside a Microslice. | |
| Spadic::MsMessageType | getMessageType (const uint32_t frame) |
| Identify the message type of a given 32bit frame inside a Microslice. | |
| uint8_t | getTsMsb (const uint32_t frame) |
| Get the ts_msb information from the TS_MSB(kEPO) frame. We take the first of the 3 The 3 redundant TS_MSB sets are already compared at the FPGA level. | |
| virtual CbmTrdRawMessageSpadic | makeRaw (const uint32_t frame, uint16_t criId, uint8_t crobId, uint16_t elinkId, uint8_t istream) |
| Create a CbmTrdRawMessageSpadic from the hit message input. | |
| void | makeDigi (CbmTrdRawMessageSpadic raw) |
| Create an actual digi from the raw message. | |
| void | makeDigi (Spadic::FexWord< 0x10 > fw, uint32_t criid) |
| Create an actual digi from the fex message. | |
| bool | setDerivedTsParameters (size_t) |
| Up to now we do not need this function for this algorithm. | |
| bool | unpack (const fles::Timeslice *ts, uint16_t icomp, UInt_t imslice) |
| Unpack a given microslice. | |
| bool | unpackRaw (const fles::MicrosliceDescriptor msdesc, const size_t *mscontent) |
| template<uint8_t sys_ver> | |
| bool | unpackFex (const fles::MicrosliceDescriptor msdesc, const size_t *mscontent) |
| void | digestOutput (std::unique_ptr< CbmTrdDigi > digi, CbmTrdRawMessageSpadic raw) |
| Handle the output created by the explicit algorithms. E.g. write to output vectors. | |
| void | finish () |
| Finish function for this algorithm base clase. | |
| virtual uint32_t | getAsicAddress (uint32_t criid, uint32_t crobid, uint32_t elinkid) |
| Get the Asic Address (CbmAddress scheme) for the given hardware Ids. | |
| uint32_t | getChannelId (uint32_t asicaddress, uint32_t elinkid, uint32_t elinkchannelid) |
| Get the Channel Id (CbmAddress scheme) for the given hardware Ids. | |
| virtual Bool_t | init () |
| Additional initialisation function for all BaseR derived algorithms. | |
| Bool_t | initParSet (FairParGenericSet *parset) |
| Handles the distribution of the hidden derived classes to their explicit functions. | |
| Bool_t | initParSet (CbmTrdParSetAsic *parset) |
| Transfer parameters from ParSetAsic container to members. | |
| Bool_t | initParSet (CbmTrdParSetDigi *parset) |
| Transfer parameters from ParSetDigi container to members. | |
| Bool_t | initParSet (CbmMcbm2020TrdTshiftPar *parset) |
| Transfer parameters from CbmMcbm2020TrdTshiftPar container to members. | |
Protected Attributes | |
| std::vector< uint8_t > | fNrTsMsbVec = {} |
| Counter for the ts_msb used to reconstruct the time. | |
| size_t | fNrNonMajorTsMsb = 0 |
| Counter for the ts_msb used to reconstruct the time. | |
| size_t | fNrElinkMis = 0 |
| Number of SOM to RDA/EOM mismatches. | |
| size_t | fNrCorruptEom = 0 |
| Number of corrupted EOM frames. | |
| size_t | fMsStartTimeRel = 0 |
| Start time of the current micro-Slice relative to the Timeslice start time in ns. | |
| size_t | fMsStartTimeRelCC = 0 |
| Start time of the current micro-Slice relative to the Timeslice start time in Spadic CC. | |
| std::shared_ptr< CbmTrdUnpackMonitor > | fMonitor = nullptr |
| Potential (online) monitor for the unpacking process. | |
| std::shared_ptr< CbmTrdSpadic > | fSpadic = nullptr |
| Spadic software reprensentation object. | |
| std::shared_ptr< CbmTrdRawToDigiBaseR > | fRTDMethod = nullptr |
| raw to digi extraction method, set in the task | |
| std::map< size_t, Int_t > | fSpadicAddressMap = {} |
| Map to retrieve asic address from CriId/CrobId/ElinkId (see CbmTrdHardwareSetupR) | |
| std::map< Int_t, std::vector< Int_t > > | fAsicChannelMap = {} |
| Map to retrieve module channelId from asicAddress and asicChannel. | |
| std::map< size_t, std::vector< Int_t > > | fTimeshiftsMap = {} |
| Map containing the timeshift parameters for the correction of the micro-Slice timeshifts. The keys are the tsIdx, if no key is found, the shifts of the previous tsIdx are used again. | |
| Bool_t | fIsFirstChannelsElinkEven = kFALSE |
| Define if the first 16 channels (00..15) are found on the even (set true) or odd (false) eLinkId. Default for mCbm2020 is false thus, initialized as false. | |
| size_t | fNrWildRda = 0 |
| Number of rda frames outside of a SOM frame range. | |
| size_t | fNrWildEom = 0 |
| Number of eom frames outside of a SOM frame range. | |
| size_t | fNrMissingEom = 0 |
| Number of missing EOM frames to finish a SOM frame. | |
| size_t | fNrWildNul = 0 |
| Number of wild null words, should only appear at the end of a micro-Slice. | |
| size_t | fNrUnknownWords = 0 |
| Number of unknown words. | |
| size_t | fTsMsbLengthCC = fTsMsbLength / CbmTrdSpadic::GetClockCycle() |
| length of one ts_msb in [cc] | |
| std::map< uint32_t, std::vector< int32_t > > | fElinkTimeOffsetMap |
| Map to store time offsets for each CRI&Elink combination. | |
Static Protected Attributes | |
| static const uint8_t | fBytesPerWord = 8 |
| Bytes per spadic frame stored in the microslices. | |
| static const uint8_t | fStreamsPerWord = 2 |
| Number of streams per word For the msg format used from 2021 ongoing we have 2 parallel streams per word. All data from eLinks 0..20 go to one stream and 21..41 to the other. | |
| static constexpr uint16_t | fTsMsbLength = 16000 |
| length of one ts_msb in [ns] | |
Definition at line 38 of file CbmTrdUnpackAlgoR.h.
| CbmTrdUnpackAlgoR::CbmTrdUnpackAlgoR | ( | ) |
Create the Cbm Trd Unpack AlgoBase object.
Definition at line 23 of file CbmTrdUnpackAlgoR.cxx.
References CbmTrdUnpackAlgoBaseR::CbmTrdUnpackAlgoBaseR().
Referenced by CbmTrdUnpackAlgoR(), and operator=().
|
virtual |
Destroy the Cbm Trd Unpack Task object.
Definition at line 25 of file CbmTrdUnpackAlgoR.cxx.
|
delete |
Copy constructor - not implemented.
References CbmTrdUnpackAlgoR().
|
protected |
Digest the aditional flags stored in the 4 "cccc" bits of the EPO messages.
| frame | |
| criId | id of the cri that send the micro-Slice |
| criobId | id of the crob that send the micro-Slice (currently not used set to 0 062021 PR) |
| elinkId | id of the elink from which the info message frame came |
Definition at line 58 of file CbmTrdUnpackAlgoR.cxx.
References CbmTrdUnpackAlgoBaseR::fMonitor, CbmTrdUnpackAlgoBaseR::getAsicAddress(), Spadic::kChannelBuf, Spadic::kChannelBufM, and Spadic::kOrdFifoBuf.
Referenced by getInfoType().
|
protected |
Digest a info message run all default information forwarding from the msg.
| frame | |
| criId | id of the cri that send the micro-Slice |
| criobId | id of the crob that send the micro-Slice (currently not used set to 0 062021 PR) |
| elinkId | id of the elink from which the info message frame came |
Save info message if needed.
Definition at line 76 of file CbmTrdUnpackAlgoR.cxx.
References CbmTrdUnpackAlgoBaseR::fMonitor, CbmTrdUnpackAlgoBaseR::getAsicAddress(), and getInfoType().
Referenced by unpackRaw().
|
protected |
Digest the flags of the currently unpacked micro-Slice.
| flags | flags stored in the micro-Slice descriptor |
| criId | id of the cri that send the micro-Slice |
| criobId | id of the crob that send the micro-Slice (currently not used set to 0 062021 PR) |
Definition at line 94 of file CbmTrdUnpackAlgoR.cxx.
References CbmTrdUnpackAlgoBaseR::fMonitor, and CbmTrdUnpackAlgoBaseR::getAsicAddress().
Referenced by unpack().
|
protectedinherited |
Handle the output created by the explicit algorithms. E.g. write to output vectors.
| digi | |
| raw |
Definition at line 25 of file CbmTrdUnpackAlgoBaseR.cxx.
References fMonitor.
Referenced by CbmTrdUnpackAlgoLegacy2020R::makeDigi(), and CbmTrdUnpackAlgoR::makeDigi().
|
protected |
Extract the baseline average sample from a given adcbuffer. Depending on the Spadic settings sample-0 is a plain sample or the averaged baseline calculation. The latter is not a 9 bit signed integer, but a 9 bit floating point number 7 digits before the point and 2 afterwards.
| [in] | adcbuffer | |
| [in,out] | nadcbits |
Definition at line 126 of file CbmTrdUnpackAlgoR.cxx.
Referenced by unpackRaw().
|
protected |
Extract all adc samples from a given adcbuffer container.
Extract one adc sample from a given adcbuffer
| [in] | adcbuffer | |
| [in,out] | nadcbits |
Definition at line 154 of file CbmTrdUnpackAlgoR.cxx.
Referenced by unpackRaw().
|
inlineprotectedinherited |
Finish function for this algorithm base clase.
Definition at line 103 of file CbmTrdUnpackAlgoBaseR.h.
References finishDerived(), and fMonitor.
|
protectedvirtual |
Additional explicit finish function of this algo implementation.
Implements CbmTrdUnpackAlgoBaseR.
Definition at line 174 of file CbmTrdUnpackAlgoR.cxx.
References fNrCorruptEom, fNrElinkMis, CbmTrdUnpackAlgoBaseR::fNrMissingEom, fNrNonMajorTsMsb, CbmTrdUnpackAlgoBaseR::fNrUnknownWords, CbmTrdUnpackAlgoBaseR::fNrWildEom, CbmTrdUnpackAlgoBaseR::fNrWildNul, and CbmTrdUnpackAlgoBaseR::fNrWildRda.
|
protectedvirtualinherited |
Get the Asic Address (CbmAddress scheme) for the given hardware Ids.
| criid | |
| crobid | |
| elinkid |
Definition at line 43 of file CbmTrdUnpackAlgoBaseR.cxx.
References fSpadicAddressMap, CbmTrdParAsic::kCriIdPosition, and CbmTrdParAsic::kCrobIdPosition.
Referenced by CbmTrdUnpackAlgoR::digestBufInfoFlags(), CbmTrdUnpackAlgoR::digestInfoMsg(), CbmTrdUnpackAlgoR::digestMsFlags(), CbmTrdUnpackAlgoR::makeDigi(), and CbmTrdUnpackAlgoR::makeDigi().
|
protectedinherited |
Get the Channel Id (CbmAddress scheme) for the given hardware Ids.
| asicaddress | |
| elinkid | |
| elinkchannelid |
Definition at line 60 of file CbmTrdUnpackAlgoBaseR.cxx.
References fAsicChannelMap, fIsFirstChannelsElinkEven, and CbmTrdSpadic::GetNrChannels().
Referenced by CbmTrdUnpackAlgoR::makeDigi(), and CbmTrdUnpackAlgoR::makeDigi().
|
inlineinherited |
Get the time offeset to be substracted from the digis which come from a specific CRI.
| criid |
Definition at line 88 of file CbmTrdUnpackAlgoBaseR.h.
References fElinkTimeOffsetMap.
Referenced by CbmTrdUnpackAlgoR::makeDigi(), and CbmTrdUnpackAlgoR::makeDigi().
|
protected |
Identify the InfoType of a 64bit InfoMessage word inside a Microslice.
Definition at line 184 of file CbmTrdUnpackAlgoR.cxx.
References digestBufInfoFlags(), Spadic::kBOM, Spadic::kBUF, Spadic::kMIS, Spadic::kMSB, and Spadic::kUNU.
Referenced by digestInfoMsg().
|
protected |
Identify the message type of a given 32bit frame inside a Microslice.
Definition at line 224 of file CbmTrdUnpackAlgoR.cxx.
References Spadic::kEOM, Spadic::kEPO, Spadic::kINF, Spadic::kNUL, Spadic::kRDA, Spadic::kSOM, and Spadic::kUNK.
Referenced by unpackRaw().
|
virtual |
Get the requested parameter containers. Return the required parameter containers together with the paths to the ascii files to.
| [in] | std::string | geoTag as used in CbmSetup |
| [in] | uint32_t | runId for runwise defined parameters |
Definition at line 30 of file CbmTrdUnpackAlgoR.cxx.
References CbmTrdUnpackAlgoBaseR::fMonitor.
|
protected |
Get the ts_msb information from the TS_MSB(kEPO) frame. We take the first of the 3 The 3 redundant TS_MSB sets are already compared at the FPGA level.
| frame |
Definition at line 258 of file CbmTrdUnpackAlgoR.cxx.
References fNrNonMajorTsMsb.
Referenced by unpackRaw().
|
protectedvirtualinherited |
Additional initialisation function for all BaseR derived algorithms.
Definition at line 144 of file CbmTrdUnpackAlgoBaseR.cxx.
References fMonitor, fRTDMethod, and fSpadic.
|
protectedinherited |
Transfer parameters from CbmMcbm2020TrdTshiftPar container to members.
These are mCBM 2020 specific parameters needed to correct in run timeshifts.
| parset |
Definition at line 133 of file CbmTrdUnpackAlgoBaseR.cxx.
References fTimeshiftsMap, and CbmMcbm2020TrdTshiftPar::GetTimeshiftsMap().
|
protectedinherited |
Transfer parameters from ParSetAsic container to members.
Currently we mainly transfer here the addressing, other parameters are yet to come.
| parset |
Definition at line 90 of file CbmTrdUnpackAlgoBaseR.cxx.
References CbmTrdHardwareSetupR::CreateAsicChannelMap(), CbmTrdHardwareSetupR::CreateHwToSwAsicAddressTranslatorMap(), fAsicChannelMap, and fSpadicAddressMap.
|
protectedinherited |
Transfer parameters from ParSetDigi container to members.
The monitor needs this to extract module informations, e.g. ncols and nrows.
| parset |
Definition at line 114 of file CbmTrdUnpackAlgoBaseR.cxx.
References fMonitor.
|
protectedinherited |
Handles the distribution of the hidden derived classes to their explicit functions.
| parset |
Definition at line 72 of file CbmTrdUnpackAlgoBaseR.cxx.
References initParSet().
Referenced by initParSet().
|
protected |
Create an actual digi from the raw message.
| raw |
Definition at line 282 of file CbmTrdUnpackAlgoR.cxx.
References CbmTrdUnpackAlgoBaseR::digestOutput(), CbmTrdUnpackAlgoBaseR::fRTDMethod, CbmTrdUnpackAlgoBaseR::getAsicAddress(), CbmTrdRawMessageSpadic::GetChannelId(), CbmTrdUnpackAlgoBaseR::getChannelId(), CbmTrdRawMessageSpadic::GetCriId(), CbmTrdRawMessageSpadic::GetCrobId(), CbmTrdRawToDigiBaseR::GetDigiTriggerType(), CbmTrdRawMessageSpadic::GetElinkId(), CbmTrdUnpackAlgoBaseR::GetElinkTimeOffset(), CbmTrdRawMessageSpadic::GetFullTime(), CbmTrdRawMessageSpadic::GetHitType(), CbmTrdRawMessageSpadic::GetMultiHit(), CbmTrdRawMessageSpadic::GetSamples(), CbmTrdRawMessageSpadic::GetTime(), and CbmTrdDigi::kMulti.
Referenced by unpackFex(), and unpackRaw().
|
protected |
Create an actual digi from the fex message.
| fw | FexWord for a given sys_ver |
| criid | the eq_is of a FLIM channel |
Definition at line 320 of file CbmTrdUnpackAlgoR.cxx.
References CbmTrdUnpackAlgoBaseR::fMonitor, fMsStartTimeRel, CbmTrdUnpackAlgoBaseR::fSpadic, CbmTrdUnpackAlgoBaseR::getAsicAddress(), CbmTrdUnpackAlgoBaseR::getChannelId(), CbmTrdRawToDigiBaseR::GetDigiTriggerType(), CbmTrdUnpackAlgoBaseR::GetElinkTimeOffset(), and CbmTrdDigi::kMulti.
|
protectedvirtual |
Create a CbmTrdRawMessageSpadic from the hit message input.
| word | |
| criId | id of the cri that send the micro-Slice |
| criobId | id of the crob that send the micro-Slice (currently not used set to 0 062021 PR) |
| istream |
Definition at line 358 of file CbmTrdUnpackAlgoR.cxx.
References fMsStartTimeRelCC, fNrTsMsbVec, and CbmTrdUnpackAlgoBaseR::fTsMsbLengthCC.
Referenced by unpackRaw().
|
delete |
Assignment operator - not implemented.
References CbmTrdUnpackAlgoR().
|
inlineprotected |
Up to now we do not need this function for this algorithm.
Definition at line 167 of file CbmTrdUnpackAlgoR.h.
|
inlineinherited |
Register a time offeset to be substracted from the digis which come from a specific CRI.
| map |
Definition at line 81 of file CbmTrdUnpackAlgoBaseR.h.
References fElinkTimeOffsetMap.
|
inlineinherited |
Set a predefined monitor.
| monitor | predefined unpacking monitor |
Definition at line 60 of file CbmTrdUnpackAlgoBaseR.h.
References fMonitor.
|
inlineinherited |
Set the Raw To Digi Method.
| value |
Definition at line 67 of file CbmTrdUnpackAlgoBaseR.h.
References fRTDMethod.
|
inlineinherited |
Set the Spadic Object.
| value |
Definition at line 74 of file CbmTrdUnpackAlgoBaseR.h.
References fSpadic.
|
protected |
Unpack a given microslice.
| ts | timeslice pointer |
| icomp | index to the component to be unpacked |
| imslice | index of the microslice to be unpacked |
Definition at line 380 of file CbmTrdUnpackAlgoR.cxx.
References digestMsFlags(), CbmTrdUnpackAlgoBaseR::fMonitor, fMsStartTimeRel, fMsStartTimeRelCC, CbmTrdUnpackAlgoBaseR::fSpadic, unpackFex(), and unpackRaw().
|
protected |
Definition at line 609 of file CbmTrdUnpackAlgoR.cxx.
References Spadic::BytesPerWord(), and makeDigi().
Referenced by unpack().
|
protected |
Definition at line 413 of file CbmTrdUnpackAlgoR.cxx.
References digestInfoMsg(), extractAvgSample(), extractSample(), fBytesPerWord, fNrCorruptEom, fNrElinkMis, CbmTrdUnpackAlgoBaseR::fNrMissingEom, fNrTsMsbVec, CbmTrdUnpackAlgoBaseR::fNrUnknownWords, CbmTrdUnpackAlgoBaseR::fNrWildEom, CbmTrdUnpackAlgoBaseR::fNrWildNul, CbmTrdUnpackAlgoBaseR::fNrWildRda, CbmTrdUnpackAlgoBaseR::fSpadic, fStreamsPerWord, CbmTrdRawMessageSpadic::GetElinkId(), getMessageType(), getTsMsb(), CbmTrdRawMessageSpadic::IncNrSamples(), Spadic::kEOM, Spadic::kEPO, Spadic::kINF, Spadic::kNUL, Spadic::kRDA, Spadic::kSOM, Spadic::kUNK, makeDigi(), makeRaw(), and CbmTrdRawMessageSpadic::SetSample().
Referenced by unpack().
Map to retrieve module channelId from asicAddress and asicChannel.
Definition at line 196 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by getChannelId(), initParSet(), and CbmTrdUnpackAlgoLegacy2020R::makeDigi().
|
staticprotected |
Bytes per spadic frame stored in the microslices.
Definition at line 209 of file CbmTrdUnpackAlgoR.h.
Referenced by unpackRaw().
|
protectedinherited |
Map to store time offsets for each CRI&Elink combination.
Definition at line 227 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by GetElinkTimeOffset(), and SetElinkTimeOffsetMap().
|
protectedinherited |
Define if the first 16 channels (00..15) are found on the even (set true) or odd (false) eLinkId. Default for mCbm2020 is false thus, initialized as false.
Definition at line 203 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by getChannelId(), and CbmTrdUnpackAlgoLegacy2020R::makeDigi().
|
protectedinherited |
Potential (online) monitor for the unpacking process.
Definition at line 183 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by CbmTrdUnpackAlgoR::digestBufInfoFlags(), CbmTrdUnpackAlgoR::digestInfoMsg(), CbmTrdUnpackAlgoR::digestMsFlags(), digestOutput(), finish(), CbmTrdUnpackAlgoLegacy2020R::GetParContainerRequest(), CbmTrdUnpackAlgoR::GetParContainerRequest(), init(), initParSet(), CbmTrdUnpackAlgoR::makeDigi(), SetMonitor(), and CbmTrdUnpackAlgoR::unpack().
|
protected |
Start time of the current micro-Slice relative to the Timeslice start time in ns.
Definition at line 202 of file CbmTrdUnpackAlgoR.h.
Referenced by makeDigi(), and unpack().
|
protected |
Start time of the current micro-Slice relative to the Timeslice start time in Spadic CC.
Definition at line 205 of file CbmTrdUnpackAlgoR.h.
|
protected |
Number of corrupted EOM frames.
Definition at line 199 of file CbmTrdUnpackAlgoR.h.
Referenced by finishDerived(), and unpackRaw().
|
protected |
Number of SOM to RDA/EOM mismatches.
Definition at line 196 of file CbmTrdUnpackAlgoR.h.
Referenced by finishDerived(), and unpackRaw().
|
protectedinherited |
Number of missing EOM frames to finish a SOM frame.
Definition at line 212 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by CbmTrdUnpackAlgoR::finishDerived(), and CbmTrdUnpackAlgoR::unpackRaw().
|
protected |
Counter for the ts_msb used to reconstruct the time.
Definition at line 193 of file CbmTrdUnpackAlgoR.h.
Referenced by finishDerived(), and getTsMsb().
|
protected |
Counter for the ts_msb used to reconstruct the time.
Definition at line 190 of file CbmTrdUnpackAlgoR.h.
Referenced by makeRaw(), and unpackRaw().
|
protectedinherited |
Number of unknown words.
Definition at line 218 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by CbmTrdUnpackAlgoLegacy2020R::finishDerived(), CbmTrdUnpackAlgoR::finishDerived(), CbmTrdUnpackAlgoLegacy2020R::unpack(), and CbmTrdUnpackAlgoR::unpackRaw().
|
protectedinherited |
Number of eom frames outside of a SOM frame range.
Definition at line 209 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by CbmTrdUnpackAlgoR::finishDerived(), and CbmTrdUnpackAlgoR::unpackRaw().
|
protectedinherited |
Number of wild null words, should only appear at the end of a micro-Slice.
Definition at line 215 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by CbmTrdUnpackAlgoR::finishDerived(), and CbmTrdUnpackAlgoR::unpackRaw().
|
protectedinherited |
Number of rda frames outside of a SOM frame range.
Definition at line 206 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by CbmTrdUnpackAlgoLegacy2020R::finishDerived(), CbmTrdUnpackAlgoR::finishDerived(), CbmTrdUnpackAlgoLegacy2020R::unpack(), and CbmTrdUnpackAlgoR::unpackRaw().
|
protectedinherited |
raw to digi extraction method, set in the task
Definition at line 190 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by init(), CbmTrdUnpackAlgoLegacy2020R::makeDigi(), CbmTrdUnpackAlgoR::makeDigi(), and SetRawToDigiMethod().
|
protectedinherited |
Spadic software reprensentation object.
Definition at line 187 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by CbmTrdUnpackAlgoLegacy2020R::extractSample(), init(), CbmTrdUnpackAlgoR::makeDigi(), SetSpadicObject(), CbmTrdUnpackAlgoR::unpack(), and CbmTrdUnpackAlgoR::unpackRaw().
|
protectedinherited |
Map to retrieve asic address from CriId/CrobId/ElinkId (see CbmTrdHardwareSetupR)
Definition at line 193 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by getAsicAddress(), initParSet(), and CbmTrdUnpackAlgoLegacy2020R::makeDigi().
|
staticprotected |
Number of streams per word For the msg format used from 2021 ongoing we have 2 parallel streams per word. All data from eLinks 0..20 go to one stream and 21..41 to the other.
Definition at line 212 of file CbmTrdUnpackAlgoR.h.
Referenced by unpackRaw().
|
protectedinherited |
Map containing the timeshift parameters for the correction of the micro-Slice timeshifts. The keys are the tsIdx, if no key is found, the shifts of the previous tsIdx are used again.
Definition at line 199 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by initParSet(), and CbmTrdUnpackAlgoLegacy2020R::setDerivedTsParameters().
|
staticconstexprprotectedinherited |
length of one ts_msb in [ns]
Definition at line 221 of file CbmTrdUnpackAlgoBaseR.h.
|
protectedinherited |
length of one ts_msb in [cc]
Definition at line 224 of file CbmTrdUnpackAlgoBaseR.h.
Referenced by CbmTrdUnpackAlgoR::makeRaw().