CbmRoot
Loading...
Searching...
No Matches
AccTimingEvent Class Reference

#include <AccDataSis18.h>

Public Member Functions

 AccTimingEvent ()=default
 
 AccTimingEvent (uint64_t ulPlannedUTCIn, uint64_t ulPlannedTAIIn, uint64_t ulRawEventIn, uint64_t ulRawParamsIn, uint32_t uRawTimingFlagsIn, uint64_t ulExecutedUTCIn, uint64_t ulExecutedTAIIn)
 
 AccTimingEvent (std::string sLine, bool bVerbose=false)
 
virtual ~AccTimingEvent ()=default
 
void Print () const
 
uint32_t GetGroupId () const
 
uint32_t GetEventId () const
 
uint64_t GetTime () const
 
bool IsCycleStart () const
 
bool IsCycleEnd () const
 
bool IsExtractionStart () const
 
bool IsExtractionEnd () const
 
bool operator< (const AccTimingEvent &rhs)
 
bool operator< (const uint64_t &rhs)
 

Private Member Functions

 ClassDef (AccTimingEvent, 1)
 

Private Attributes

uint64_t fulPlannedUTC = 0
 Fields.
 
uint64_t fulPlannedTAI = 0
 
uint64_t fulRawEvent = 0
 
uint64_t fulRawParams = 0
 
uint32_t fuRawTimingFlags = 0
 
uint64_t fulExecutedUTC = 0
 
uint64_t fulExecutedTAI = 0
 

Static Private Attributes

static const uint32_t kNbBitsFormatId = 4
 
static const uint32_t kNbBitsGroupId = 12
 
static const uint32_t kNbBitsEventId = 12
 
static const uint32_t kNbBitsFlags = 4
 
static const uint32_t kNbBitsSequenceId = 12
 
static const uint32_t kNbBitsBeamProcId = 14
 
static const uint32_t kNbBitsReserved = 6
 
static const uint32_t kOffsetReserved = 0
 ----> Field offset
 
static const uint32_t kOffsetBeamProcId = kOffsetReserved + kNbBitsReserved
 
static const uint32_t kOffsetSequenceId = kOffsetBeamProcId + kNbBitsBeamProcId
 
static const uint32_t kOffsetFlags = kOffsetSequenceId + kNbBitsSequenceId
 
static const uint32_t kOffsetEventId = kOffsetFlags + kNbBitsFlags
 
static const uint32_t kOffsetGroupId = kOffsetEventId + kNbBitsEventId
 
static const uint32_t kOffsetFormatId = kOffsetGroupId + kNbBitsGroupId
 
static const uint32_t kEventIdStartCycle = 32
 
static const uint32_t kEventIdExtrStartSlow = 46
 
static const uint32_t kEventIdExtrEnd = 51
 
static const uint32_t kEventIdEndCycle = 55
 
static const uint32_t kEventIdExtrStopSlow = 78
 

Friends

bool operator< (const uint64_t &lhs, const AccTimingEvent &rhs)
 Needed for finding time position within a vector of AccTimingEvent with lower_bound/upper_bound.
 

Detailed Description

Definition at line 11 of file AccDataSis18.h.

Constructor & Destructor Documentation

◆ AccTimingEvent() [1/3]

AccTimingEvent::AccTimingEvent ( )
default

◆ AccTimingEvent() [2/3]

AccTimingEvent::AccTimingEvent ( uint64_t ulPlannedUTCIn,
uint64_t ulPlannedTAIIn,
uint64_t ulRawEventIn,
uint64_t ulRawParamsIn,
uint32_t uRawTimingFlagsIn,
uint64_t ulExecutedUTCIn,
uint64_t ulExecutedTAIIn )

Definition at line 12 of file AccDataSis18.cxx.

◆ AccTimingEvent() [3/3]

AccTimingEvent::AccTimingEvent ( std::string sLine,
bool bVerbose = false )

◆ ~AccTimingEvent()

virtual AccTimingEvent::~AccTimingEvent ( )
virtualdefault

Member Function Documentation

◆ ClassDef()

AccTimingEvent::ClassDef ( AccTimingEvent ,
1  )
private

◆ GetEventId()

uint32_t AccTimingEvent::GetEventId ( ) const
inline

Definition at line 25 of file AccDataSis18.h.

References fulRawEvent, kNbBitsEventId, and kOffsetEventId.

Referenced by IsCycleEnd(), IsCycleStart(), IsExtractionEnd(), and IsExtractionStart().

◆ GetGroupId()

uint32_t AccTimingEvent::GetGroupId ( ) const
inline

Definition at line 24 of file AccDataSis18.h.

References fulRawEvent, kNbBitsGroupId, and kOffsetGroupId.

◆ GetTime()

uint64_t AccTimingEvent::GetTime ( ) const
inline

Definition at line 27 of file AccDataSis18.h.

References fulPlannedUTC.

◆ IsCycleEnd()

bool AccTimingEvent::IsCycleEnd ( ) const
inline

Definition at line 30 of file AccDataSis18.h.

References GetEventId(), and kEventIdEndCycle.

Referenced by AccStatusTs::IsCycleOnAtStart().

◆ IsCycleStart()

bool AccTimingEvent::IsCycleStart ( ) const
inline

Definition at line 29 of file AccDataSis18.h.

References GetEventId(), and kEventIdStartCycle.

◆ IsExtractionEnd()

bool AccTimingEvent::IsExtractionEnd ( ) const
inline

Definition at line 32 of file AccDataSis18.h.

References GetEventId(), and kEventIdExtrEnd.

◆ IsExtractionStart()

bool AccTimingEvent::IsExtractionStart ( ) const
inline

Definition at line 31 of file AccDataSis18.h.

References GetEventId(), and kEventIdExtrStartSlow.

Referenced by AccStatusTs::IsSpillOnAtStart().

◆ operator<() [1/2]

bool AccTimingEvent::operator< ( const AccTimingEvent & rhs)
inline

Definition at line 34 of file AccDataSis18.h.

References fulPlannedUTC.

◆ operator<() [2/2]

bool AccTimingEvent::operator< ( const uint64_t & rhs)
inline

Definition at line 35 of file AccDataSis18.h.

References fulPlannedUTC.

◆ Print()

void AccTimingEvent::Print ( ) const

Friends And Related Symbol Documentation

◆ operator<

bool operator< ( const uint64_t & lhs,
const AccTimingEvent & rhs )
friend

Needed for finding time position within a vector of AccTimingEvent with lower_bound/upper_bound.

Definition at line 38 of file AccDataSis18.h.

Member Data Documentation

◆ fulExecutedTAI

uint64_t AccTimingEvent::fulExecutedTAI = 0
private

Definition at line 83 of file AccDataSis18.h.

Referenced by AccTimingEvent(), and Print().

◆ fulExecutedUTC

uint64_t AccTimingEvent::fulExecutedUTC = 0
private

Definition at line 82 of file AccDataSis18.h.

Referenced by AccTimingEvent(), and Print().

◆ fulPlannedTAI

uint64_t AccTimingEvent::fulPlannedTAI = 0
private

Definition at line 78 of file AccDataSis18.h.

Referenced by AccTimingEvent(), and Print().

◆ fulPlannedUTC

uint64_t AccTimingEvent::fulPlannedUTC = 0
private

Fields.

Definition at line 77 of file AccDataSis18.h.

Referenced by AccTimingEvent(), GetTime(), operator<(), operator<(), and Print().

◆ fulRawEvent

uint64_t AccTimingEvent::fulRawEvent = 0
private

Definition at line 79 of file AccDataSis18.h.

Referenced by AccTimingEvent(), GetEventId(), GetGroupId(), and Print().

◆ fulRawParams

uint64_t AccTimingEvent::fulRawParams = 0
private

Definition at line 80 of file AccDataSis18.h.

Referenced by AccTimingEvent(), and Print().

◆ fuRawTimingFlags

uint32_t AccTimingEvent::fuRawTimingFlags = 0
private

Definition at line 81 of file AccDataSis18.h.

Referenced by AccTimingEvent(), and Print().

◆ kEventIdEndCycle

const uint32_t AccTimingEvent::kEventIdEndCycle = 55
staticprivate

Definition at line 73 of file AccDataSis18.h.

Referenced by IsCycleEnd().

◆ kEventIdExtrEnd

const uint32_t AccTimingEvent::kEventIdExtrEnd = 51
staticprivate

Definition at line 72 of file AccDataSis18.h.

Referenced by IsExtractionEnd().

◆ kEventIdExtrStartSlow

const uint32_t AccTimingEvent::kEventIdExtrStartSlow = 46
staticprivate

Definition at line 71 of file AccDataSis18.h.

Referenced by IsExtractionStart().

◆ kEventIdExtrStopSlow

const uint32_t AccTimingEvent::kEventIdExtrStopSlow = 78
staticprivate

Definition at line 74 of file AccDataSis18.h.

◆ kEventIdStartCycle

const uint32_t AccTimingEvent::kEventIdStartCycle = 32
staticprivate

--> Event types Dec Hex Name Meaning

Spill limits 46 2E EVT_EXTR_START_SLOW Start of extraction 51 33 EVT_EXTR_END End of extraction 78 4E EVT_EXTR_STOP_SLOW End of slow extraction

Cycle limits 32 20 EVT_START_CYCLE First Event in a cycle 55 37 EVT_END_CYCLE End of a cycle

Definition at line 70 of file AccDataSis18.h.

Referenced by IsCycleStart().

◆ kNbBitsBeamProcId

const uint32_t AccTimingEvent::kNbBitsBeamProcId = 14
staticprivate

Definition at line 49 of file AccDataSis18.h.

◆ kNbBitsEventId

const uint32_t AccTimingEvent::kNbBitsEventId = 12
staticprivate

Definition at line 46 of file AccDataSis18.h.

Referenced by GetEventId().

◆ kNbBitsFlags

const uint32_t AccTimingEvent::kNbBitsFlags = 4
staticprivate

Definition at line 47 of file AccDataSis18.h.

◆ kNbBitsFormatId

const uint32_t AccTimingEvent::kNbBitsFormatId = 4
staticprivate

Constants --> Bit fields of the Raw event descriptor ----> Field size

Definition at line 44 of file AccDataSis18.h.

◆ kNbBitsGroupId

const uint32_t AccTimingEvent::kNbBitsGroupId = 12
staticprivate

Definition at line 45 of file AccDataSis18.h.

Referenced by GetGroupId().

◆ kNbBitsReserved

const uint32_t AccTimingEvent::kNbBitsReserved = 6
staticprivate

Definition at line 50 of file AccDataSis18.h.

◆ kNbBitsSequenceId

const uint32_t AccTimingEvent::kNbBitsSequenceId = 12
staticprivate

Definition at line 48 of file AccDataSis18.h.

◆ kOffsetBeamProcId

const uint32_t AccTimingEvent::kOffsetBeamProcId = kOffsetReserved + kNbBitsReserved
staticprivate

Definition at line 53 of file AccDataSis18.h.

◆ kOffsetEventId

const uint32_t AccTimingEvent::kOffsetEventId = kOffsetFlags + kNbBitsFlags
staticprivate

Definition at line 56 of file AccDataSis18.h.

Referenced by GetEventId().

◆ kOffsetFlags

const uint32_t AccTimingEvent::kOffsetFlags = kOffsetSequenceId + kNbBitsSequenceId
staticprivate

Definition at line 55 of file AccDataSis18.h.

◆ kOffsetFormatId

const uint32_t AccTimingEvent::kOffsetFormatId = kOffsetGroupId + kNbBitsGroupId
staticprivate

Definition at line 58 of file AccDataSis18.h.

◆ kOffsetGroupId

const uint32_t AccTimingEvent::kOffsetGroupId = kOffsetEventId + kNbBitsEventId
staticprivate

Definition at line 57 of file AccDataSis18.h.

Referenced by GetGroupId().

◆ kOffsetReserved

const uint32_t AccTimingEvent::kOffsetReserved = 0
staticprivate

----> Field offset

Definition at line 52 of file AccDataSis18.h.

◆ kOffsetSequenceId

const uint32_t AccTimingEvent::kOffsetSequenceId = kOffsetBeamProcId + kNbBitsBeamProcId
staticprivate

Definition at line 54 of file AccDataSis18.h.


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