1 #ifndef L1GlobalTrigger_L1TcsWord_h
2 #define L1GlobalTrigger_L1TcsWord_h
21 #include <boost/cstdint.hpp>
41 boost::uint16_t boardIdValue,
42 boost::uint16_t bxNrValue,
43 boost::uint16_t daqNrValue,
44 boost::uint16_t triggerTypeValue,
45 boost::uint16_t statusValue,
46 boost::uint16_t luminositySegmentNrValue,
47 boost::uint32_t partRunNrValue,
48 boost::uint32_t assignedPartitionsValue,
49 boost::uint32_t partTrigNrValue,
50 boost::uint32_t eventNrValue,
68 inline const boost::uint16_t
boardId()
const
89 inline const boost::uint16_t
bxNr()
const
94 void setBxNr(
const boost::uint16_t bxNrValue)
109 inline const boost::uint16_t
daqNr()
const
149 inline const boost::uint16_t
status()
const
300 void print(std::ostream& myCout)
const;
304 void unpack(
const unsigned char* tcsPtr);
const boost::uint32_t partTrigNr() const
get/set total number of L1A sent since start of the run to this DAQ partition
void setTriggerType(const boost::uint16_t triggerTypeValue)
static const int OrbitNrWord
void setBxNr(const boost::uint16_t bxNrValue)
void setTriggerTypeWord64(boost::uint64_t &word64, int iWord)
static const int PartRunNrShift
const boost::uint16_t daqNr() const
get/set number of DAQ partition to which the L1A has been sent
boost::uint16_t m_bxNr
bunch cross number as counted in the TCS chip
const boost::uint64_t orbitNr() const
get/set orbit number since start of run
boost::uint16_t m_triggerType
trigger type, identical with event type in CMS header (event type)
void setStatusWord64(boost::uint64_t &word64, int iWord)
void reset()
reset the content of a L1TcsWord
void setLuminositySegmentNrWord64(boost::uint64_t &word64, int iWord)
static const int UnitLength
one unit in the word is UnitLength bits
static const boost::uint64_t PartRunNrMask
boost::uint32_t m_assignedPartitions
static const int OrbitNrShift
const boost::uint16_t status() const
get/set status: 0000 = normal rate; 1000 = low rate = warning
static const int BxNrShift
const boost::uint32_t assignedPartitions() const
get/set assigned partition: bit "i" correspond to detector partition "i"
void setDaqNrWord64(boost::uint64_t &word64, int iWord)
static const boost::uint64_t TriggerTypeMask
static const boost::uint64_t AssignedPartitionsMask
static const int EventNrWord
boost::uint16_t m_status
0000 = normal rate; 1000 = low rate = warning
void setStatus(const boost::uint16_t statusValue)
void setAssignedPartitions(const boost::uint32_t assignedPartitionsValue)
static const int PartRunNrWord
void print(std::ostream &myCout) const
pretty print the content of a L1TcsWord
void setPartRunNrWord64(boost::uint64_t &word64, int iWord)
boost::uint32_t m_eventNr
event number since last L1 reset generated in TCS chip
const boost::uint16_t triggerType() const
get/set trigger type, identical with event type in CMS header
static const boost::uint64_t BxNrMask
boost::uint16_t m_daqNr
number of DAQ partition to which the L1A has been sent
static const int LuminositySegmentNrWord
static const boost::uint64_t EventNrMask
static const int DaqNrShift
void setBoardId(const boost::uint16_t boardIdValue)
set BoardId from a BoardId value
bool operator!=(const L1TcsWord &) const
unequal operator
static const int PartTrigNrWord
static const int BxNrWord
static const int LuminositySegmentNrShift
static const int PartTrigNrShift
void setEventNr(const boost::uint32_t eventNrValue)
static const int StatusWord
const boost::uint16_t bxNr() const
get/set bunch cross number as counted in the TCS chip
static const int AssignedPartitionsWord
boost::uint64_t m_orbitNr
orbit number since start of run (48 bits, in fact)
static const int BoardIdShift
static const int BoardIdWord
boost::uint16_t m_luminositySegmentNr
luminosity segment number
void setPartRunNr(const boost::uint32_t partRunNrValue)
void setBoardIdWord64(boost::uint64_t &word64, int iWord)
static const int DaqNrWord
unsigned long long uint64_t
static const boost::uint64_t PartTrigNrMask
static const int StatusShift
void setPartTrigNr(const boost::uint32_t partTrigNrValue)
const unsigned int getSize() const
get the size of the TCS block in GT EVM record (in multiple of 8 bits)
const boost::uint16_t luminositySegmentNr() const
get/set luminosity segment number
void setBxNrWord64(boost::uint64_t &word64, int iWord)
static const int BlockSize
const boost::uint16_t boardId() const
get/set board ID
void unpack(const unsigned char *tcsPtr)
static const int EventNrShift
static const boost::uint64_t BoardIdMask
static const int TriggerTypeShift
static const boost::uint64_t OrbitNrMask
void setPartTrigNrWord64(boost::uint64_t &word64, int iWord)
void setOrbitNrWord64(boost::uint64_t &word64, int iWord)
static const boost::uint64_t DaqNrMask
boost::uint16_t m_boardId
board identifier
static const boost::uint64_t StatusMask
void setDaqNr(const boost::uint16_t daqNrValue)
boost::uint32_t m_partTrigNr
boost::uint32_t m_partRunNr
partition run number
void setOrbitNrFrom(const boost::uint64_t &word64)
set the OrbitNr value from a 64-bits word
const boost::uint32_t eventNr() const
get/set event number since last L1 reset generated in TCS chip
static const int TriggerTypeWord
const boost::uint32_t partRunNr() const
get/set partition run number
void setAssignedPartitionsWord64(boost::uint64_t &word64, int iWord)
void setEventNrWord64(boost::uint64_t &word64, int iWord)
static const boost::uint64_t LuminositySegmentNrMask
void setLuminositySegmentNr(const boost::uint16_t luminositySegmentNrValue)
bool operator==(const L1TcsWord &) const
equal operator
static const int AssignedPartitionsShift
virtual ~L1TcsWord()
destructor
void setOrbitNr(const boost::uint64_t orbitNrValue)