CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
gem::AMCdata Class Reference

#include <AMCdata.h>

Public Member Functions

void addGEB (GEBdata g)
 Adds GEB data to vector. More...
 
 AMCdata ()
 
uint8_t amcNum () const
 
uint8_t backPressure () const
 
uint8_t bc0locked () const
 
uint16_t boardId () const
 
uint32_t buffState () const
 
uint16_t bunchCrossing () const
 
void clearGEBs ()
 Clear a vector of GEB data. More...
 
uint32_t crc () const
 
uint8_t daqClockLocked () const
 
uint8_t daqReady () const
 
uint32_t dataLength () const
 
uint8_t davCnt () const
 
uint32_t davList () const
 
uint8_t formatVer () const
 
const std::vector< GEBdata > * gebs () const
 Returns a vector of GEB data. More...
 
uint64_t getAMCheader1 () const
 
uint64_t getAMCheader2 () const
 
uint64_t getAMCTrailer () const
 
uint64_t getGEMeventHeader () const
 
uint64_t getGEMeventTrailer () const
 
uint32_t linkTo () const
 
uint32_t lv1Id () const
 
uint8_t lv1Idt () const
 
uint8_t mmcmLocked () const
 
uint8_t oosGlib () const
 
uint16_t orbitNumber () const
 
uint8_t param1 () const
 
uint8_t param2 () const
 
uint8_t param3 () const
 
uint8_t runType () const
 
void setAMCheader1 (uint32_t dataLength, uint16_t bxID, uint32_t l1AID, uint8_t AMCnum)
 
void setAMCheader1 (uint64_t word)
 
void setAMCheader2 (uint16_t boardID, uint16_t orbitNum, uint8_t runType)
 
void setAMCheader2 (uint64_t word)
 
void setAMCTrailer (uint64_t word)
 
void setGEMeventHeader (uint64_t word)
 
void setGEMeventHeader (uint8_t davCnt, uint32_t davList)
 
void setGEMeventTrailer (uint64_t word)
 
int status ()
 
uint16_t ttsState () const
 
 ~AMCdata ()
 

Private Attributes

uint64_t amch1_
 
uint64_t amch2_
 
uint64_t amct_
 
uint64_t eh_
 
uint64_t et_
 
std::vector< GEBdatagebd_
 Vector of GEB data. More...
 

Detailed Description

Definition at line 67 of file AMCdata.h.

Constructor & Destructor Documentation

◆ AMCdata()

gem::AMCdata::AMCdata ( )
inline

Definition at line 69 of file AMCdata.h.

69 : amch1_(0), amch2_(0), amct_(0), eh_(0), et_(0){};

◆ ~AMCdata()

gem::AMCdata::~AMCdata ( )
inline

Definition at line 70 of file AMCdata.h.

70 { gebd_.clear(); }

References gebd_.

Member Function Documentation

◆ addGEB()

void gem::AMCdata::addGEB ( GEBdata  g)
inline

Adds GEB data to vector.

Definition at line 122 of file AMCdata.h.

122 { gebd_.push_back(g); }

References g, and gebd_.

◆ amcNum()

uint8_t gem::AMCdata::amcNum ( ) const
inline

Definition at line 95 of file AMCdata.h.

95 { return AMCheader1{amch1_}.AMCnum; }

References amch1_.

◆ backPressure()

uint8_t gem::AMCdata::backPressure ( ) const
inline

Definition at line 117 of file AMCdata.h.

117 { return EventTrailer{et_}.BP; }

References et_.

◆ bc0locked()

uint8_t gem::AMCdata::bc0locked ( ) const
inline

Definition at line 113 of file AMCdata.h.

113 { return EventTrailer{et_}.BCL; }

References et_.

◆ boardId()

uint16_t gem::AMCdata::boardId ( ) const
inline

Definition at line 97 of file AMCdata.h.

97 { return AMCheader2{amch2_}.boardID; }

References amch2_.

◆ buffState()

uint32_t gem::AMCdata::buffState ( ) const
inline

Definition at line 110 of file AMCdata.h.

110 { return EventHeader{eh_}.buffState; }

References eh_.

◆ bunchCrossing()

uint16_t gem::AMCdata::bunchCrossing ( ) const
inline

Definition at line 93 of file AMCdata.h.

93 { return AMCheader1{amch1_}.bxID; }

References amch1_.

◆ clearGEBs()

void gem::AMCdata::clearGEBs ( )
inline

Clear a vector of GEB data.

Definition at line 126 of file AMCdata.h.

126 { gebd_.clear(); }

References gebd_.

◆ crc()

uint32_t gem::AMCdata::crc ( ) const
inline

Definition at line 106 of file AMCdata.h.

106 { return AMCTrailer{amct_}.crc; }

References amct_.

◆ daqClockLocked()

uint8_t gem::AMCdata::daqClockLocked ( ) const
inline

Definition at line 115 of file AMCdata.h.

115 { return EventTrailer{et_}.CL; }

References et_.

◆ daqReady()

uint8_t gem::AMCdata::daqReady ( ) const
inline

Definition at line 114 of file AMCdata.h.

114 { return EventTrailer{et_}.DR; }

References et_.

◆ dataLength()

uint32_t gem::AMCdata::dataLength ( ) const
inline

Definition at line 92 of file AMCdata.h.

92 { return AMCTrailer{amct_}.dataLength; }

References amct_.

Referenced by setAMCheader1().

◆ davCnt()

uint8_t gem::AMCdata::davCnt ( ) const
inline

Definition at line 109 of file AMCdata.h.

109 { return EventHeader{eh_}.davCnt; }

References eh_.

Referenced by setGEMeventHeader().

◆ davList()

uint32_t gem::AMCdata::davList ( ) const
inline

Definition at line 111 of file AMCdata.h.

111 { return EventHeader{eh_}.davList; }

References eh_.

Referenced by setGEMeventHeader().

◆ formatVer()

uint8_t gem::AMCdata::formatVer ( ) const
inline

Definition at line 103 of file AMCdata.h.

103 { return AMCheader2{amch2_}.formatVer; }

References amch2_.

◆ gebs()

const std::vector<GEBdata>* gem::AMCdata::gebs ( ) const
inline

Returns a vector of GEB data.

Definition at line 124 of file AMCdata.h.

124 { return &gebd_; }

References gebd_.

◆ getAMCheader1()

uint64_t gem::AMCdata::getAMCheader1 ( ) const
inline

Definition at line 76 of file AMCdata.h.

76 { return amch1_; }

References amch1_.

◆ getAMCheader2()

uint64_t gem::AMCdata::getAMCheader2 ( ) const
inline

Definition at line 80 of file AMCdata.h.

80 { return amch2_; }

References amch2_.

◆ getAMCTrailer()

uint64_t gem::AMCdata::getAMCTrailer ( ) const
inline

Definition at line 83 of file AMCdata.h.

83 { return amct_; }

References amct_.

◆ getGEMeventHeader()

uint64_t gem::AMCdata::getGEMeventHeader ( ) const
inline

Definition at line 87 of file AMCdata.h.

87 { return eh_; }

References eh_.

◆ getGEMeventTrailer()

uint64_t gem::AMCdata::getGEMeventTrailer ( ) const
inline

Definition at line 90 of file AMCdata.h.

90 { return et_; }

References et_.

◆ linkTo()

uint32_t gem::AMCdata::linkTo ( ) const
inline

Definition at line 119 of file AMCdata.h.

119 { return EventTrailer{et_}.linkTo; }

References et_.

◆ lv1Id()

uint32_t gem::AMCdata::lv1Id ( ) const
inline

Definition at line 94 of file AMCdata.h.

94 { return AMCheader1{amch1_}.l1AID; }

References amch1_.

◆ lv1Idt()

uint8_t gem::AMCdata::lv1Idt ( ) const
inline

Definition at line 105 of file AMCdata.h.

105 { return AMCTrailer{amct_}.l1AID; }

References amct_.

◆ mmcmLocked()

uint8_t gem::AMCdata::mmcmLocked ( ) const
inline

Definition at line 116 of file AMCdata.h.

116 { return EventTrailer{et_}.ML; }

References et_.

◆ oosGlib()

uint8_t gem::AMCdata::oosGlib ( ) const
inline

Definition at line 118 of file AMCdata.h.

118 { return EventTrailer{et_}.oosGlib; }

References et_.

◆ orbitNumber()

uint16_t gem::AMCdata::orbitNumber ( ) const
inline

Definition at line 98 of file AMCdata.h.

98 { return AMCheader2{amch2_}.orbitNum; }

References amch2_.

◆ param1()

uint8_t gem::AMCdata::param1 ( ) const
inline

Definition at line 101 of file AMCdata.h.

101 { return AMCheader2{amch2_}.param1; }

References amch2_.

◆ param2()

uint8_t gem::AMCdata::param2 ( ) const
inline

Definition at line 100 of file AMCdata.h.

100 { return AMCheader2{amch2_}.param2; }

References amch2_.

◆ param3()

uint8_t gem::AMCdata::param3 ( ) const
inline

Definition at line 99 of file AMCdata.h.

99 { return AMCheader2{amch2_}.param3; }

References amch2_.

◆ runType()

uint8_t gem::AMCdata::runType ( ) const
inline

Definition at line 102 of file AMCdata.h.

102 { return AMCheader2{amch2_}.runType; }

References amch2_.

Referenced by setAMCheader2().

◆ setAMCheader1() [1/2]

void AMCdata::setAMCheader1 ( uint32_t  dataLength,
uint16_t  bxID,
uint32_t  l1AID,
uint8_t  AMCnum 
)

Definition at line 6 of file AMCdata.cc.

6  {
7  AMCheader1 u{0};
9  u.bxID = bxID;
10  u.l1AID = l1AID;
11  u.AMCnum = AMCnum;
12  amch1_ = u.word;
13 
14  AMCTrailer ut{0};
16  ut.l1AID = l1AID;
17  amct_ = ut.word;
18 }

References amch1_, amct_, gem::AMCheader1::dataLength, gem::AMCTrailer::dataLength, and dataLength().

◆ setAMCheader1() [2/2]

void gem::AMCdata::setAMCheader1 ( uint64_t  word)
inline

Definition at line 74 of file AMCdata.h.

74 { amch1_ = word; }

References amch1_.

◆ setAMCheader2() [1/2]

void AMCdata::setAMCheader2 ( uint16_t  boardID,
uint16_t  orbitNum,
uint8_t  runType 
)

Definition at line 20 of file AMCdata.cc.

20  {
21  AMCheader2 u{0};
22  u.boardID = boardID;
23  u.orbitNum = orbitNum;
24  u.runType = runType;
25  amch2_ = u.word;
26 }

References amch2_, gem::AMCheader2::boardID, and runType().

◆ setAMCheader2() [2/2]

void gem::AMCdata::setAMCheader2 ( uint64_t  word)
inline

Definition at line 78 of file AMCdata.h.

78 { amch2_ = word; }

References amch2_.

◆ setAMCTrailer()

void gem::AMCdata::setAMCTrailer ( uint64_t  word)
inline

Definition at line 82 of file AMCdata.h.

82 { amct_ = word; }

References amct_.

◆ setGEMeventHeader() [1/2]

void gem::AMCdata::setGEMeventHeader ( uint64_t  word)
inline

Definition at line 85 of file AMCdata.h.

85 { eh_ = word; }

References eh_.

◆ setGEMeventHeader() [2/2]

void AMCdata::setGEMeventHeader ( uint8_t  davCnt,
uint32_t  davList 
)

Definition at line 28 of file AMCdata.cc.

28  {
29  EventHeader u{0};
30  u.davCnt = davCnt;
31  u.davList = davList;
32  eh_ = u.word;
33 
34  EventTrailer ut{0};
35  ut.BCL = 1;
36  ut.DR = 1;
37  ut.CL = 1;
38  ut.ML = 1;
39  et_ = ut.word;
40 }

References gem::EventTrailer::BCL, gem::EventHeader::davCnt, davCnt(), davList(), eh_, and et_.

◆ setGEMeventTrailer()

void gem::AMCdata::setGEMeventTrailer ( uint64_t  word)
inline

Definition at line 89 of file AMCdata.h.

89 { et_ = word; }

References et_.

◆ status()

int gem::AMCdata::status ( )

◆ ttsState()

uint16_t gem::AMCdata::ttsState ( ) const
inline

Definition at line 108 of file AMCdata.h.

108 { return EventHeader{eh_}.ttsState; }

References eh_.

Member Data Documentation

◆ amch1_

uint64_t gem::AMCdata::amch1_
private

Definition at line 129 of file AMCdata.h.

Referenced by amcNum(), bunchCrossing(), getAMCheader1(), lv1Id(), and setAMCheader1().

◆ amch2_

uint64_t gem::AMCdata::amch2_
private

◆ amct_

uint64_t gem::AMCdata::amct_
private

Definition at line 131 of file AMCdata.h.

Referenced by crc(), dataLength(), getAMCTrailer(), lv1Idt(), setAMCheader1(), and setAMCTrailer().

◆ eh_

uint64_t gem::AMCdata::eh_
private

Definition at line 132 of file AMCdata.h.

Referenced by buffState(), davCnt(), davList(), getGEMeventHeader(), setGEMeventHeader(), and ttsState().

◆ et_

uint64_t gem::AMCdata::et_
private

◆ gebd_

std::vector<GEBdata> gem::AMCdata::gebd_
private

Vector of GEB data.

Definition at line 135 of file AMCdata.h.

Referenced by addGEB(), clearGEBs(), gebs(), and ~AMCdata().

gem::AMCdata::dataLength
uint32_t dataLength() const
Definition: AMCdata.h:92
gem::AMCheader2
Definition: AMCdata.h:18
gem::AMCdata::et_
uint64_t et_
Definition: AMCdata.h:133
gem::EventHeader::davCnt
uint64_t davCnt
Definition: AMCdata.h:47
gem::AMCdata::amct_
uint64_t amct_
Definition: AMCdata.h:131
gem::EventTrailer
Definition: AMCdata.h:52
gem::AMCdata::davList
uint32_t davList() const
Definition: AMCdata.h:111
EventHeader
Definition: EventHeader.h:18
gem::EventHeader
Definition: AMCdata.h:39
gem::AMCTrailer::dataLength
uint64_t dataLength
Definition: AMCdata.h:33
gem::AMCdata::runType
uint8_t runType() const
Definition: AMCdata.h:102
word
uint64_t word
Definition: CTPPSTotemDataFormatter.cc:29
gem::AMCdata::eh_
uint64_t eh_
Definition: AMCdata.h:132
gem::AMCdata::amch2_
uint64_t amch2_
Definition: AMCdata.h:130
gem::AMCdata::davCnt
uint8_t davCnt() const
Definition: AMCdata.h:109
gem::EventTrailer::BCL
uint64_t BCL
Definition: AMCdata.h:55
gem::AMCdata::amch1_
uint64_t amch1_
Definition: AMCdata.h:129
gem::AMCdata::gebd_
std::vector< GEBdata > gebd_
Vector of GEB data.
Definition: AMCdata.h:135
gem::AMCheader1::dataLength
uint64_t dataLength
Definition: AMCdata.h:11
gem::AMCheader2::boardID
uint64_t boardID
Definition: AMCdata.h:21
gem::AMCheader1
Definition: AMCdata.h:8
gem::AMCTrailer
Definition: AMCdata.h:30
g
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
Definition: Activities.doc:4