CbmRoot
Loading...
Searching...
No Matches
critof001::FullMessage Class Reference

#include <CriGet4Mess001.h>

Inheritance diagram for critof001::FullMessage:
[legend]
Collaboration diagram for critof001::FullMessage:
[legend]

Public Member Functions

 FullMessage ()
 
 FullMessage (const Message &src, uint64_t uEpIn=0)
 
 FullMessage (const FullMessage &src)
 
void assign (const FullMessage &src)
 
FullMessageoperator= (const FullMessage &src)
 
bool operator< (const FullMessage &other) const
 strict weak ordering operator, including epoch for both messages
 
void reset ()
 
uint64_t getExtendedEpoch () const
 
double GetFullTimeNs () const
 
void PrintMessage (unsigned outType=msg_print_Cout, unsigned kind=msg_print_Human) const
 
void assign (const Message &src)
 
uint64_t getData () const
 
void setData (uint64_t value)
 
uint64_t getFieldLong (uint32_t shift, uint32_t len) const
 
uint32_t getField (uint32_t shift, uint32_t len) const
 
void setField (uint32_t shift, uint32_t len, uint32_t value)
 
void setFieldLong (uint32_t shift, uint32_t len, uint64_t value)
 
uint8_t getBit (uint32_t shift) const
 
void setBit (uint32_t shift, uint8_t value)
 
uint32_t getFieldBE (uint32_t shift, uint32_t len) const
 
uint8_t getBitBE (uint32_t shift) const
 
uint64_t dataBE () const
 
uint8_t getMessageType () const
 Returns the message type. Valid for all message types. 2 bit.
 
void setMessageType (uint8_t v)
 Sets the message type field in the current message.
 
uint16_t getDebugTimer () const
 
void setDebugTimer (uint32_t v)
 
uint16_t getGet4Idx () const
 
void setGet4Id (uint32_t v)
 
uint16_t getGdpbHitChanId () const
 
uint32_t getGdpbHitFullTs () const
 
bool getGdpbHit32DllLck () const
 
uint16_t getGdpbHit32Tot () const
 
uint32_t getGdpbEpEpochNb () const
 
bool getGdpbEpSync () const
 
bool getGdpbEpDataLoss () const
 
bool getGdpbEpEpochLoss () const
 
bool getGdpbEpMissmatch () const
 
uint32_t getGdpbSlcMess () const
 
uint32_t getGdpbSlcChan () const
 
uint32_t getGdpbSlcEdge () const
 
uint32_t getGdpbSlcType () const
 
uint32_t getGdpbSlcData () const
 
uint16_t getGdpbSysSubType () const
 
bool getGdpbSysLinkId () const
 
bool getGdpbSysErrRoType () const
 
uint16_t getGdpbSysErrUnused () const
 
uint16_t getGdpbSysErrInfo () const
 
uint16_t getGdpbSysErrChanId () const
 
bool getGdpbSysErrEdge () const
 
uint16_t getGdpbSysErrData () const
 
uint32_t getGdpbSysUnkwData () const
 
uint32_t getGdpbSysFwErrResync () const
 
uint16_t getGdpbSysPattType () const
 
uint16_t getGdpbSysPattIndex () const
 
uint32_t getGdpbSysPattPattern () const
 
void setGdpbEpEpochNb (uint32_t v)
 
void setGdpbSysSubType (uint16_t v)
 
void setGdpbSysPattType (uint16_t v)
 
void setGdpbSysPattIndex (uint16_t v)
 
void setGdpbSysPattPattern (uint32_t v)
 
bool isHitMsg () const
 Returns true is message type is MSG_HIT (Get4 hit data)
 
bool isEpochMsg () const
 Returns true is message type is MSG_EPOCH (epoch2 marker)
 
bool isGet4SlCtrMsg () const
 Returns true is message type is MSG_SLOWC (GET4 Slow Control)
 
bool isSystem () const
 Returns true is message type is #MSG_ERROR (error message)
 
bool isEndOfMs () const
 Returns true is message type is an EndOfMs marker.
 
void printDataCout (unsigned kind=msg_print_Prefix|msg_print_Data, uint32_t epoch=0) const
 Print message in human readable format to cout.
 
void printDataLog (unsigned kind=msg_print_Prefix|msg_print_Data, uint32_t epoch=0) const
 Print message in human readable format to the Fairroot logger.
 
void printData (unsigned outType=msg_print_Cout, unsigned kind=msg_print_Human, uint32_t epoch=0, std::ostream &os=std::cout) const
 Print message in binary or human readable format to a stream.
 
uint64_t getMsgFullTime (uint64_t epoch) const
 Returns expanded and adjusted time of message (in ns)
 
double getMsgFullTimeD (uint64_t epoch) const
 Returns expanded and adjusted time of message in double (in ns)
 
bool operator< (const critof001::Message &other) const
 strict weak ordering operator, assumes same epoch for both messages
 
bool operator== (const critof001::Message &other) const
 equality operator, assumes same epoch for both messages
 
bool operator!= (const critof001::Message &other) const
 inequality operator, assumes same epoch for both messages
 

Static Public Member Functions

static uint64_t FullTimeStamp (uint64_t epoch, uint32_t ts)
 Expanded timestamp for 160 MHz * 19 bit (12 + 7) epochs.
 
static uint64_t CalcDistance (uint64_t start, uint64_t stop)
 Returns the time difference between two expanded time stamps.
 
static double CalcDistanceD (double start, double stop)
 Returns the time difference between two expanded time stamps.
 

Protected Attributes

uint64_t fulExtendedEpoch
 
uint64_t data
 

Detailed Description

Definition at line 306 of file CriGet4Mess001.h.

Constructor & Destructor Documentation

◆ FullMessage() [1/3]

critof001::FullMessage::FullMessage ( )
inline

Definition at line 311 of file CriGet4Mess001.h.

◆ FullMessage() [2/3]

critof001::FullMessage::FullMessage ( const Message & src,
uint64_t uEpIn = 0 )
inline

Definition at line 313 of file CriGet4Mess001.h.

◆ FullMessage() [3/3]

critof001::FullMessage::FullMessage ( const FullMessage & src)
inline

Definition at line 315 of file CriGet4Mess001.h.

Member Function Documentation

◆ assign() [1/2]

void critof001::FullMessage::assign ( const FullMessage & src)
inline

Definition at line 317 of file CriGet4Mess001.h.

References critof001::Message::assign(), and fulExtendedEpoch.

Referenced by operator=().

◆ assign() [2/2]

void critof001::Message::assign ( const Message & src)
inlineinherited

Definition at line 152 of file CriGet4Mess001.h.

References critof001::Message::data.

Referenced by assign(), and critof001::Message::operator=().

◆ CalcDistance()

uint64_t critof001::Message::CalcDistance ( uint64_t start,
uint64_t stop )
staticinherited

Returns the time difference between two expanded time stamps.

Definition at line 120 of file CriGet4Mess001.cxx.

◆ CalcDistanceD()

double critof001::Message::CalcDistanceD ( double start,
double stop )
staticinherited

Returns the time difference between two expanded time stamps.

Definition at line 137 of file CriGet4Mess001.cxx.

◆ dataBE()

uint64_t critof001::Message::dataBE ( ) const
inlineinherited

◆ FullTimeStamp()

static uint64_t critof001::Message::FullTimeStamp ( uint64_t epoch,
uint32_t ts )
inlinestaticinherited

Expanded timestamp for 160 MHz * 19 bit (12 + 7) epochs.

Definition at line 294 of file CriGet4Mess001.h.

◆ getBit()

◆ getBitBE()

uint8_t critof001::Message::getBitBE ( uint32_t shift) const
inlineinherited

Definition at line 199 of file CriGet4Mess001.h.

References critof001::Message::dataBE().

◆ getData()

uint64_t critof001::Message::getData ( ) const
inlineinherited

Definition at line 162 of file CriGet4Mess001.h.

References critof001::Message::data.

Referenced by CbmTofUnpackAlgo::ProcessEpoch().

◆ getDebugTimer()

uint16_t critof001::Message::getDebugTimer ( ) const
inlineinherited

Definition at line 217 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getExtendedEpoch()

uint64_t critof001::FullMessage::getExtendedEpoch ( ) const
inline

Definition at line 337 of file CriGet4Mess001.h.

References fulExtendedEpoch.

◆ getField()

◆ getFieldBE()

uint32_t critof001::Message::getFieldBE ( uint32_t shift,
uint32_t len ) const
inlineinherited

Definition at line 195 of file CriGet4Mess001.h.

References critof001::Message::dataBE().

◆ getFieldLong()

uint64_t critof001::Message::getFieldLong ( uint32_t shift,
uint32_t len ) const
inlineinherited

Definition at line 165 of file CriGet4Mess001.h.

References critof001::Message::data.

◆ GetFullTimeNs()

double critof001::FullMessage::GetFullTimeNs ( ) const
inline

Definition at line 339 of file CriGet4Mess001.h.

References fulExtendedEpoch, and critof001::Message::getMsgFullTimeD().

◆ getGdpbEpDataLoss()

bool critof001::Message::getGdpbEpDataLoss ( ) const
inlineinherited

Definition at line 231 of file CriGet4Mess001.h.

References critof001::Message::getBit().

Referenced by CbmTofUnpackAlgo::ProcessEpoch().

◆ getGdpbEpEpochLoss()

bool critof001::Message::getGdpbEpEpochLoss ( ) const
inlineinherited

Definition at line 232 of file CriGet4Mess001.h.

References critof001::Message::getBit().

Referenced by CbmTofUnpackAlgo::ProcessEpoch().

◆ getGdpbEpEpochNb()

uint32_t critof001::Message::getGdpbEpEpochNb ( ) const
inlineinherited

◆ getGdpbEpMissmatch()

bool critof001::Message::getGdpbEpMissmatch ( ) const
inlineinherited

Definition at line 233 of file CriGet4Mess001.h.

References critof001::Message::getBit().

Referenced by CbmTofUnpackAlgo::ProcessEpoch().

◆ getGdpbEpSync()

bool critof001::Message::getGdpbEpSync ( ) const
inlineinherited

Definition at line 230 of file CriGet4Mess001.h.

References critof001::Message::getBit().

Referenced by CbmTofUnpackAlgo::ProcessEpoch().

◆ getGdpbHit32DllLck()

bool critof001::Message::getGdpbHit32DllLck ( ) const
inlineinherited

Definition at line 225 of file CriGet4Mess001.h.

References critof001::Message::getBit().

◆ getGdpbHit32Tot()

uint16_t critof001::Message::getGdpbHit32Tot ( ) const
inlineinherited

◆ getGdpbHitChanId()

uint16_t critof001::Message::getGdpbHitChanId ( ) const
inlineinherited

◆ getGdpbHitFullTs()

uint32_t critof001::Message::getGdpbHitFullTs ( ) const
inlineinherited

Definition at line 224 of file CriGet4Mess001.h.

References critof001::Message::getField().

Referenced by critof001::Message::operator<().

◆ getGdpbSlcChan()

uint32_t critof001::Message::getGdpbSlcChan ( ) const
inlineinherited

Definition at line 237 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSlcData()

uint32_t critof001::Message::getGdpbSlcData ( ) const
inlineinherited

Definition at line 240 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSlcEdge()

uint32_t critof001::Message::getGdpbSlcEdge ( ) const
inlineinherited

Definition at line 238 of file CriGet4Mess001.h.

References critof001::Message::getBit().

◆ getGdpbSlcMess()

uint32_t critof001::Message::getGdpbSlcMess ( ) const
inlineinherited

Definition at line 236 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSlcType()

uint32_t critof001::Message::getGdpbSlcType ( ) const
inlineinherited

Definition at line 239 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSysErrChanId()

uint16_t critof001::Message::getGdpbSysErrChanId ( ) const
inlineinherited

Definition at line 249 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSysErrData()

uint16_t critof001::Message::getGdpbSysErrData ( ) const
inlineinherited

Definition at line 251 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSysErrEdge()

bool critof001::Message::getGdpbSysErrEdge ( ) const
inlineinherited

Definition at line 250 of file CriGet4Mess001.h.

References critof001::Message::getBit().

◆ getGdpbSysErrInfo()

uint16_t critof001::Message::getGdpbSysErrInfo ( ) const
inlineinherited

Definition at line 248 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSysErrRoType()

bool critof001::Message::getGdpbSysErrRoType ( ) const
inlineinherited

Definition at line 246 of file CriGet4Mess001.h.

References critof001::Message::getBit().

◆ getGdpbSysErrUnused()

uint16_t critof001::Message::getGdpbSysErrUnused ( ) const
inlineinherited

Definition at line 247 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSysFwErrResync()

uint32_t critof001::Message::getGdpbSysFwErrResync ( ) const
inlineinherited

Definition at line 255 of file CriGet4Mess001.h.

References critof001::Message::getBit().

◆ getGdpbSysLinkId()

bool critof001::Message::getGdpbSysLinkId ( ) const
inlineinherited

Definition at line 244 of file CriGet4Mess001.h.

References critof001::Message::getBit().

◆ getGdpbSysPattIndex()

uint16_t critof001::Message::getGdpbSysPattIndex ( ) const
inlineinherited

Definition at line 258 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSysPattPattern()

uint32_t critof001::Message::getGdpbSysPattPattern ( ) const
inlineinherited

Definition at line 259 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSysPattType()

uint16_t critof001::Message::getGdpbSysPattType ( ) const
inlineinherited

Definition at line 257 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSysSubType()

uint16_t critof001::Message::getGdpbSysSubType ( ) const
inlineinherited

Definition at line 243 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGdpbSysUnkwData()

uint32_t critof001::Message::getGdpbSysUnkwData ( ) const
inlineinherited

Definition at line 253 of file CriGet4Mess001.h.

References critof001::Message::getField().

◆ getGet4Idx()

uint16_t critof001::Message::getGet4Idx ( ) const
inlineinherited

◆ getMessageType()

uint8_t critof001::Message::getMessageType ( ) const
inlineinherited

◆ getMsgFullTime()

uint64_t critof001::Message::getMsgFullTime ( uint64_t epoch) const
inherited

Returns expanded and adjusted time of message (in ns)

Definition at line 95 of file CriGet4Mess001.cxx.

◆ getMsgFullTimeD()

double critof001::Message::getMsgFullTimeD ( uint64_t epoch) const
inherited

◆ isEndOfMs()

bool critof001::Message::isEndOfMs ( ) const
inlineinherited

Returns true is message type is an EndOfMs marker.

Definition at line 281 of file CriGet4Mess001.h.

References critof001::Message::data, critof001::kuEndOfMsMarker, and critof001::kuEndOfMsMask.

◆ isEpochMsg()

bool critof001::Message::isEpochMsg ( ) const
inlineinherited

Returns true is message type is MSG_EPOCH (epoch2 marker)

Definition at line 275 of file CriGet4Mess001.h.

References critof001::Message::getMessageType(), and critof001::MSG_EPOCH.

◆ isGet4SlCtrMsg()

bool critof001::Message::isGet4SlCtrMsg ( ) const
inlineinherited

Returns true is message type is MSG_SLOWC (GET4 Slow Control)

Definition at line 277 of file CriGet4Mess001.h.

References critof001::Message::getMessageType(), and critof001::MSG_SLOWC.

◆ isHitMsg()

bool critof001::Message::isHitMsg ( ) const
inlineinherited

Returns true is message type is MSG_HIT (Get4 hit data)

Definition at line 273 of file CriGet4Mess001.h.

References critof001::Message::getMessageType(), and critof001::MSG_HIT.

◆ isSystem()

bool critof001::Message::isSystem ( ) const
inlineinherited

Returns true is message type is #MSG_ERROR (error message)

Definition at line 279 of file CriGet4Mess001.h.

References critof001::Message::getMessageType(), and critof001::MSG_SYST.

◆ operator!=()

bool critof001::Message::operator!= ( const critof001::Message & other) const
inherited

inequality operator, assumes same epoch for both messages

Definition at line 92 of file CriGet4Mess001.cxx.

References critof001::Message::data.

◆ operator<() [1/2]

bool critof001::FullMessage::operator< ( const FullMessage & other) const

strict weak ordering operator, including epoch for both messages

Definition at line 321 of file CriGet4Mess001.cxx.

References fulExtendedEpoch, and critof001::Message::operator<().

◆ operator<() [2/2]

bool critof001::Message::operator< ( const critof001::Message & other) const
inherited

strict weak ordering operator, assumes same epoch for both messages

Definition at line 60 of file CriGet4Mess001.cxx.

References critof001::Message::getGdpbHitFullTs(), critof001::Message::getMessageType(), and critof001::MSG_HIT.

Referenced by operator<().

◆ operator=()

FullMessage & critof001::FullMessage::operator= ( const FullMessage & src)
inline

Definition at line 323 of file CriGet4Mess001.h.

References assign().

◆ operator==()

bool critof001::Message::operator== ( const critof001::Message & other) const
inherited

equality operator, assumes same epoch for both messages

Definition at line 89 of file CriGet4Mess001.cxx.

References critof001::Message::data.

◆ printData()

void critof001::Message::printData ( unsigned outType = msg_print_Cout,
unsigned kind = msg_print_Human,
uint32_t epoch = 0,
std::ostream & os = std::cout ) const
inherited

Print message in binary or human readable format to a stream.

Prints a one line representation of the message in to a stream, selected by outType. The stream is cout if outType is false and FairLogger if outType is true. The parameter kind is mask with 4 bits

If bit msg_print_Human in kind is not set, raw format output is generated. All data fields are shown in hexadecimal. This is the format of choice when chasing hardware problems at the bit level.

If bit msg_print_Human is set, a more human readable output is generated. The timestamp is shown as fully extended and adjusted time as returned by the getMsgFullTime(uint32_t) const method. All data fields are represented in decimal.

Parameters
osoutput stream
kindmask determing output format
epochcurrent epoch number (from last epoch message)

Definition at line 201 of file CriGet4Mess001.cxx.

References critof001::MSG_EPOCH, critof001::MSG_HIT, critof001::msg_print_Cout, critof001::msg_print_Data, critof001::msg_print_File, critof001::msg_print_Hex, critof001::msg_print_Human, and critof001::msg_print_Prefix.

◆ printDataCout()

void critof001::Message::printDataCout ( unsigned kind = msg_print_Prefix | msg_print_Data,
uint32_t epoch = 0 ) const
inherited

Print message in human readable format to cout.

Prints a one line representation of the message in to cout. See printData(std::ostream&, unsigned, uint32_t) const for full documentation.

Definition at line 158 of file CriGet4Mess001.cxx.

References critof001::msg_print_Cout.

Referenced by CbmCriGet4RawPrint::DoUnpack().

◆ printDataLog()

void critof001::Message::printDataLog ( unsigned kind = msg_print_Prefix | msg_print_Data,
uint32_t epoch = 0 ) const
inherited

Print message in human readable format to the Fairroot logger.

Prints a one line representation of the message in to the Fairroot logger. TODO: Add coloring of possible See printData(std::ostream&, unsigned, uint32_t) const for full documentation.

Definition at line 169 of file CriGet4Mess001.cxx.

References critof001::msg_print_FairLog.

◆ PrintMessage()

void critof001::FullMessage::PrintMessage ( unsigned outType = msg_print_Cout,
unsigned kind = msg_print_Human ) const

Definition at line 330 of file CriGet4Mess001.cxx.

◆ reset()

void critof001::FullMessage::reset ( )
inline

Definition at line 331 of file CriGet4Mess001.h.

References fulExtendedEpoch, and critof001::Message::reset().

◆ setBit()

void critof001::Message::setBit ( uint32_t shift,
uint8_t value )
inlineinherited

Definition at line 189 of file CriGet4Mess001.h.

References critof001::Message::data.

◆ setData()

void critof001::Message::setData ( uint64_t value)
inlineinherited

Definition at line 163 of file CriGet4Mess001.h.

References critof001::Message::data.

◆ setDebugTimer()

void critof001::Message::setDebugTimer ( uint32_t v)
inlineinherited

Definition at line 218 of file CriGet4Mess001.h.

References critof001::Message::setField(), and v.

◆ setField()

◆ setFieldLong()

void critof001::Message::setFieldLong ( uint32_t shift,
uint32_t len,
uint64_t value )
inlineinherited

Definition at line 181 of file CriGet4Mess001.h.

References critof001::Message::data.

◆ setGdpbEpEpochNb()

void critof001::Message::setGdpbEpEpochNb ( uint32_t v)
inlineinherited

Definition at line 262 of file CriGet4Mess001.h.

References critof001::Message::setField(), and v.

◆ setGdpbSysPattIndex()

void critof001::Message::setGdpbSysPattIndex ( uint16_t v)
inlineinherited

Definition at line 268 of file CriGet4Mess001.h.

References critof001::Message::setField(), and v.

◆ setGdpbSysPattPattern()

void critof001::Message::setGdpbSysPattPattern ( uint32_t v)
inlineinherited

Definition at line 269 of file CriGet4Mess001.h.

References critof001::Message::setField(), and v.

◆ setGdpbSysPattType()

void critof001::Message::setGdpbSysPattType ( uint16_t v)
inlineinherited

Definition at line 267 of file CriGet4Mess001.h.

References critof001::Message::setField(), and v.

◆ setGdpbSysSubType()

void critof001::Message::setGdpbSysSubType ( uint16_t v)
inlineinherited

Definition at line 265 of file CriGet4Mess001.h.

References critof001::Message::setField(), and v.

◆ setGet4Id()

void critof001::Message::setGet4Id ( uint32_t v)
inlineinherited

Definition at line 220 of file CriGet4Mess001.h.

References critof001::Message::setField(), and v.

◆ setMessageType()

void critof001::Message::setMessageType ( uint8_t v)
inlineinherited

Sets the message type field in the current message.

Definition at line 214 of file CriGet4Mess001.h.

References critof001::Message::setField(), and v.

Member Data Documentation

◆ data

◆ fulExtendedEpoch

uint64_t critof001::FullMessage::fulExtendedEpoch
protected

Definition at line 308 of file CriGet4Mess001.h.

Referenced by assign(), getExtendedEpoch(), GetFullTimeNs(), operator<(), and reset().


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