CbmRoot
Loading...
Searching...
No Matches
cbm::algo::trd2d::FaspMessage Struct Reference

Data structure for unpacking the FASP word. More...

#include <UnpackMS.h>

Public Member Functions

 FaspMessage ()=default
 
 FaspMessage (const FaspMessage &)=default
 
 FaspMessage (uint8_t c, uint8_t typ, uint8_t t, uint16_t d, uint8_t asic)
 
std::string print () const
 
template<std::uint8_t mess_ver>
void readDW (uint32_t w)
 Read DATA WORD and store the content locally.
 
template<std::uint8_t mess_ver>
void readEW (uint32_t w)
 Read EPOCH WORD and store the content locally.
 

Static Public Member Functions

template<std::uint8_t mess_ver>
static eMessageType getType (uint32_t w)
 Implementation of message type descriptor according to message version.
 

Public Attributes

uint8_t ch = 0
 ch id in the FASP
 
eMessageType type = eMessageType::kNone
 message type 0 = data, 1 = epoch (not used for the moment)
 
uint8_t tlab = 0
 time of the digi inside the epoch
 
uint16_t data = 0
 ADC value.
 
uint32_t epoch = 0
 epoch id (not used for the moment)
 
uint8_t fasp = 0
 FASP id in the module.
 

Detailed Description

Data structure for unpacking the FASP word.

Bytes per FASP frame stored in the microslices (32 bits words)

  • DATA WORD - for legacy version ffff.ffdd dddd.dddd dddd.tttt ttta.cccc f - FASP id d - ADC signal t - time label inside epoch a - word type (1) c - channel id
  • EPOCH WORD - ffff.fftt tttt.tttt tttt.tttt ttta.cccc f - FASP id t - epoch index a - word type (0)

c - channel id

  • DATA WORD - for 06.2024 version afff.fffc ccct.tttt ttdd.dddd dddd.dddd f - FASP id d - ADC signal t - time label inside epoch a - word type (1) c - channel id
  • EPOCH WORD - afff.fffc ccct.tttt tttt tttt tttt.tttt a - word type (0) f - FASP id t - epoch index c - channel id

Definition at line 78 of file trd2d/UnpackMS.h.

Constructor & Destructor Documentation

◆ FaspMessage() [1/3]

cbm::algo::trd2d::FaspMessage::FaspMessage ( )
default

◆ FaspMessage() [2/3]

cbm::algo::trd2d::FaspMessage::FaspMessage ( const FaspMessage & )
default

◆ FaspMessage() [3/3]

cbm::algo::trd2d::FaspMessage::FaspMessage ( uint8_t c,
uint8_t typ,
uint8_t t,
uint16_t d,
uint8_t asic )

Definition at line 21 of file trd2d/UnpackMS.cxx.

References cbm::algo::trd2d::kData, cbm::algo::trd2d::kEpoch, and type.

Member Function Documentation

◆ getType()

template<std::uint8_t mess_ver>
eMessageType cbm::algo::trd2d::FaspMessage::getType ( uint32_t w)
static

Implementation of message type descriptor according to message version.

Parameters
wthe message word

Definition at line 51 of file trd2d/UnpackMS.cxx.

References cbm::algo::trd2d::kNone.

Referenced by cbm::algo::trd2d::UnpackMS< uint8_t(eMessageVersion::kMess24)>::operator()().

◆ print()

std::string cbm::algo::trd2d::FaspMessage::print ( ) const

Definition at line 34 of file trd2d/UnpackMS.cxx.

References ch, data, epoch, fasp, cbm::algo::trd2d::kData, cbm::algo::trd2d::kEpoch, tlab, and type.

◆ readDW()

template<std::uint8_t mess_ver>
void cbm::algo::trd2d::FaspMessage::readDW ( uint32_t w)

Read DATA WORD and store the content locally.

Parameters
wthe message word

Definition at line 67 of file trd2d/UnpackMS.cxx.

Referenced by cbm::algo::trd2d::UnpackMS< uint8_t(eMessageVersion::kMess24)>::operator()().

◆ readEW()

template<std::uint8_t mess_ver>
void cbm::algo::trd2d::FaspMessage::readEW ( uint32_t w)

Read EPOCH WORD and store the content locally.

Parameters
wthe message word

Definition at line 109 of file trd2d/UnpackMS.cxx.

Referenced by cbm::algo::trd2d::UnpackMS< uint8_t(eMessageVersion::kMess24)>::operator()().

Member Data Documentation

◆ ch

uint8_t cbm::algo::trd2d::FaspMessage::ch = 0

ch id in the FASP

Definition at line 103 of file trd2d/UnpackMS.h.

Referenced by cbm::algo::trd2d::UnpackMS< uint8_t(eMessageVersion::kMess24)>::operator()(), and print().

◆ data

uint16_t cbm::algo::trd2d::FaspMessage::data = 0

◆ epoch

uint32_t cbm::algo::trd2d::FaspMessage::epoch = 0

epoch id (not used for the moment)

Definition at line 107 of file trd2d/UnpackMS.h.

Referenced by print().

◆ fasp

uint8_t cbm::algo::trd2d::FaspMessage::fasp = 0

FASP id in the module.

Definition at line 108 of file trd2d/UnpackMS.h.

Referenced by cbm::algo::trd2d::UnpackMS< uint8_t(eMessageVersion::kMess24)>::operator()(), and print().

◆ tlab

uint8_t cbm::algo::trd2d::FaspMessage::tlab = 0

time of the digi inside the epoch

Definition at line 105 of file trd2d/UnpackMS.h.

Referenced by print().

◆ type

eMessageType cbm::algo::trd2d::FaspMessage::type = eMessageType::kNone

message type 0 = data, 1 = epoch (not used for the moment)

Definition at line 104 of file trd2d/UnpackMS.h.

Referenced by FaspMessage(), cbm::algo::trd2d::UnpackMS< uint8_t(eMessageVersion::kMess24)>::operator()(), and print().


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