ATLAS Offline Software
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
ALFA_RawDataReadOut_charge Class Reference

#include <ALFA_RawDataReadOut_charge.h>

Inheritance diagram for ALFA_RawDataReadOut_charge:
Collaboration diagram for ALFA_RawDataReadOut_charge:

Public Member Functions

 ALFA_RawDataReadOut_charge ()
 
 ~ALFA_RawDataReadOut_charge ()
 
void decodeWord (uint32_t dataWord)
 
bool is_BOT () const
 
bool is_EOT () const
 
bool is_TDCch () const
 
uint16_t SlotId () const
 
uint16_t LsbTdcId () const
 
uint16_t ecnt_BOT () const
 
uint16_t ecnt_EOT () const
 
uint16_t bcId () const
 
uint16_t MBId () const
 
uint16_t PMFId () const
 
uint16_t ChannelNumId () const
 
uint16_t ChargeChanId () const
 
uint16_t FiberFirmwareId () const
 
bool bit12 () const
 
uint16_t bit27_24 () const
 
uint16_t bit24_27 () const
 

Protected Member Functions

constexpr std::pair< uint32_t, uint16_t > getBitsWord (const uint16_t bstart, const uint16_t bstop)
 
uint32_t getBits (std::pair< uint32_t, uint16_t > in)
 
uint32_t setBits (uint16_t nData, uint16_t *inputData, uint16_t *inputPos)
 
uint32_t setBits (uint16_t nData, uint32_t *inputData, uint16_t *inputPos)
 

Protected Attributes

uint32_t m_word
 

Private Member Functions

void setZero ()
 

Private Attributes

uint32_t m_dataWord
 
uint16_t m_wordHeader
 
uint16_t m_SlotId
 
uint16_t m_LsbTdcId
 
uint16_t m_ecnt_BOT
 
uint16_t m_ecnt_EOT
 
uint16_t m_bcId
 
uint16_t m_wcnt
 
uint16_t m_MBId
 
uint16_t m_FiberFirmwareId
 
uint16_t m_PMFId
 
uint16_t m_ChannelNumId
 
uint16_t m_ChargeChanId
 
bool m_bit12
 
uint16_t m_bit24_27
 
uint16_t m_bit27_24
 
std::vector< uint32_t > m_ChargeChan
 

Static Private Attributes

static constexpr uint16_t s_headerPos = 28
 
static constexpr uint16_t s_headerBits = 0xf
 
static constexpr uint16_t s_BOTvalue = 0xa
 
static constexpr uint16_t s_EOTvalue = 0xc
 
static constexpr uint16_t s_TSMvalue_charge = 0x4
 

Detailed Description

Definition at line 28 of file ALFA_RawDataReadOut_charge.h.

Constructor & Destructor Documentation

◆ ALFA_RawDataReadOut_charge()

ALFA_RawDataReadOut_charge::ALFA_RawDataReadOut_charge ( )

Definition at line 7 of file ALFA_RawDataReadOut_charge.cxx.

7  :
8  m_dataWord(0),
9  m_wordHeader(0),
10  m_SlotId(0),
11  m_LsbTdcId(0),
12  m_ecnt_BOT(0),
13  m_ecnt_EOT(0),
14  m_bcId(0),
15  m_wcnt(0),
16  m_MBId(0),
18  m_PMFId(0),
19  m_ChannelNumId(0),
20  m_ChargeChanId(0),
21  m_bit12(0),
22  m_bit24_27(0),
23  m_bit27_24(0),
24  m_ChargeChan()
25 { }

◆ ~ALFA_RawDataReadOut_charge()

ALFA_RawDataReadOut_charge::~ALFA_RawDataReadOut_charge ( )

Definition at line 27 of file ALFA_RawDataReadOut_charge.cxx.

28 { }

Member Function Documentation

◆ bcId()

uint16_t ALFA_RawDataReadOut_charge::bcId ( ) const
inline

Definition at line 107 of file ALFA_RawDataReadOut_charge.h.

107 {return m_bcId;}

◆ bit12()

bool ALFA_RawDataReadOut_charge::bit12 ( ) const
inline

Definition at line 115 of file ALFA_RawDataReadOut_charge.h.

115 {return m_bit12;}

◆ bit24_27()

uint16_t ALFA_RawDataReadOut_charge::bit24_27 ( ) const
inline

Definition at line 118 of file ALFA_RawDataReadOut_charge.h.

118 {return m_bit24_27;}

◆ bit27_24()

uint16_t ALFA_RawDataReadOut_charge::bit27_24 ( ) const
inline

Definition at line 117 of file ALFA_RawDataReadOut_charge.h.

117 {return m_bit27_24;}

◆ ChannelNumId()

uint16_t ALFA_RawDataReadOut_charge::ChannelNumId ( ) const
inline

Definition at line 112 of file ALFA_RawDataReadOut_charge.h.

112 {return m_ChannelNumId;}

◆ ChargeChanId()

uint16_t ALFA_RawDataReadOut_charge::ChargeChanId ( ) const
inline

Definition at line 113 of file ALFA_RawDataReadOut_charge.h.

113 {return m_ChargeChanId;}

◆ decodeWord()

void ALFA_RawDataReadOut_charge::decodeWord ( uint32_t  dataWord)

Definition at line 30 of file ALFA_RawDataReadOut_charge.cxx.

32 {
33 
34  // Zero all the decoded quantities
35  setZero();
36  m_dataWord = dataWord;
37  m_word = dataWord;
39 
40  if (is_TDCch()) // TDC single measurement
41  {
42 
43  m_PMFId = getBits(getBitsWord(23,19));
45  m_bit12 = (bool) getBits(getBitsWord(12,12));
47 
48  m_MBId = getBits(getBitsWord(7,0)); // PMF0 - PMFId 0 -> position from 1-15
49  m_FiberFirmwareId = getBits(getBitsWord(15,8)); // PMF0 - PMFId 0
50 
51  m_bit27_24 = getBits(getBitsWord(27,24));
52 
53  }
54 
55 
56  else if (is_BOT()) // Beginning of TDC
57  {
58  // One header bit is used for TDC numbers > 15
59  m_SlotId = getBits(getBitsWord(28,24));
60  m_ecnt_BOT = getBits(getBitsWord(23,12));
61  m_bcId = getBits(getBitsWord(11,0));
62  }
63  else if (is_EOT()) // End of TDC
64  {
65  m_LsbTdcId = getBits(getBitsWord(25,24));
66  m_ecnt_EOT = getBits(getBitsWord(23,12));
67  m_wcnt = getBits(getBitsWord(11,0));
68  m_bit24_27 = getBits(getBitsWord(27,24));
69  }
70 
71 
72 
73 }

◆ ecnt_BOT()

uint16_t ALFA_RawDataReadOut_charge::ecnt_BOT ( ) const
inline

Definition at line 105 of file ALFA_RawDataReadOut_charge.h.

105 {return m_ecnt_BOT;}

◆ ecnt_EOT()

uint16_t ALFA_RawDataReadOut_charge::ecnt_EOT ( ) const
inline

Definition at line 106 of file ALFA_RawDataReadOut_charge.h.

106 {return m_ecnt_EOT;}

◆ FiberFirmwareId()

uint16_t ALFA_RawDataReadOut_charge::FiberFirmwareId ( ) const
inline

Definition at line 114 of file ALFA_RawDataReadOut_charge.h.

114 {return m_FiberFirmwareId;};

◆ getBits()

uint32_t ALFA_ReadOut::getBits ( std::pair< uint32_t, uint16_t >  in)
inlineprotectedinherited

Definition at line 29 of file ALFA_ReadOut.h.

29  {
30  return (m_word >> in.second) & (in.first|1);
31  }

◆ getBitsWord()

constexpr std::pair<uint32_t, uint16_t> ALFA_ReadOut::getBitsWord ( const uint16_t  bstart,
const uint16_t  bstop 
)
inlineconstexprprotectedinherited

Definition at line 21 of file ALFA_ReadOut.h.

21  {
22  uint32_t word = 0;
23  for (uint16_t i = bstop; i<bstart ; i++ )
24  word = ((word | 1)<<1);
25  return std::make_pair(word, bstop);
26  }

◆ is_BOT()

bool ALFA_RawDataReadOut_charge::is_BOT ( ) const
inline

Definition at line 94 of file ALFA_RawDataReadOut_charge.h.

94 {return (m_wordHeader == s_BOTvalue);};

◆ is_EOT()

bool ALFA_RawDataReadOut_charge::is_EOT ( ) const
inline

Definition at line 96 of file ALFA_RawDataReadOut_charge.h.

96 {return (m_wordHeader == s_EOTvalue);};

◆ is_TDCch()

bool ALFA_RawDataReadOut_charge::is_TDCch ( ) const
inline

Definition at line 98 of file ALFA_RawDataReadOut_charge.h.

98 {return (m_wordHeader == s_TSMvalue_charge);};

◆ LsbTdcId()

uint16_t ALFA_RawDataReadOut_charge::LsbTdcId ( ) const
inline

Definition at line 104 of file ALFA_RawDataReadOut_charge.h.

104 {return m_LsbTdcId;}

◆ MBId()

uint16_t ALFA_RawDataReadOut_charge::MBId ( ) const
inline

Definition at line 110 of file ALFA_RawDataReadOut_charge.h.

110 {return m_MBId;}

◆ PMFId()

uint16_t ALFA_RawDataReadOut_charge::PMFId ( ) const
inline

Definition at line 111 of file ALFA_RawDataReadOut_charge.h.

111 {return m_PMFId;}

◆ setBits() [1/2]

uint32_t ALFA_ReadOut::setBits ( uint16_t  nData,
uint16_t *  inputData,
uint16_t *  inputPos 
)
protectedinherited

◆ setBits() [2/2]

uint32_t ALFA_ReadOut::setBits ( uint16_t  nData,
uint32_t *  inputData,
uint16_t *  inputPos 
)
protectedinherited

◆ setZero()

void ALFA_RawDataReadOut_charge::setZero ( )
private

Definition at line 76 of file ALFA_RawDataReadOut_charge.cxx.

77 {
78  m_SlotId = 0;
79  m_LsbTdcId = 0;
80  m_ecnt_BOT = 0;
81  m_ecnt_EOT = 0;
82  m_bcId = 0;
83  m_wcnt = 0;
84  m_PMFId = 0;
87  m_ChargeChanId =0;
88  m_bit12=false;
89  m_MBId = 0;
90  m_bit24_27=0;
91  m_bit27_24=0;
92 
93 }

◆ SlotId()

uint16_t ALFA_RawDataReadOut_charge::SlotId ( ) const
inline

Definition at line 103 of file ALFA_RawDataReadOut_charge.h.

103 {return m_SlotId;}

Member Data Documentation

◆ m_bcId

uint16_t ALFA_RawDataReadOut_charge::m_bcId
private

Definition at line 42 of file ALFA_RawDataReadOut_charge.h.

◆ m_bit12

bool ALFA_RawDataReadOut_charge::m_bit12
private

Definition at line 56 of file ALFA_RawDataReadOut_charge.h.

◆ m_bit24_27

uint16_t ALFA_RawDataReadOut_charge::m_bit24_27
private

Definition at line 58 of file ALFA_RawDataReadOut_charge.h.

◆ m_bit27_24

uint16_t ALFA_RawDataReadOut_charge::m_bit27_24
private

Definition at line 59 of file ALFA_RawDataReadOut_charge.h.

◆ m_ChannelNumId

uint16_t ALFA_RawDataReadOut_charge::m_ChannelNumId
private

Definition at line 53 of file ALFA_RawDataReadOut_charge.h.

◆ m_ChargeChan

std::vector<uint32_t> ALFA_RawDataReadOut_charge::m_ChargeChan
private

Definition at line 61 of file ALFA_RawDataReadOut_charge.h.

◆ m_ChargeChanId

uint16_t ALFA_RawDataReadOut_charge::m_ChargeChanId
private

Definition at line 54 of file ALFA_RawDataReadOut_charge.h.

◆ m_dataWord

uint32_t ALFA_RawDataReadOut_charge::m_dataWord
private

Definition at line 33 of file ALFA_RawDataReadOut_charge.h.

◆ m_ecnt_BOT

uint16_t ALFA_RawDataReadOut_charge::m_ecnt_BOT
private

Definition at line 40 of file ALFA_RawDataReadOut_charge.h.

◆ m_ecnt_EOT

uint16_t ALFA_RawDataReadOut_charge::m_ecnt_EOT
private

Definition at line 41 of file ALFA_RawDataReadOut_charge.h.

◆ m_FiberFirmwareId

uint16_t ALFA_RawDataReadOut_charge::m_FiberFirmwareId
private

Definition at line 50 of file ALFA_RawDataReadOut_charge.h.

◆ m_LsbTdcId

uint16_t ALFA_RawDataReadOut_charge::m_LsbTdcId
private

Definition at line 39 of file ALFA_RawDataReadOut_charge.h.

◆ m_MBId

uint16_t ALFA_RawDataReadOut_charge::m_MBId
private

Definition at line 49 of file ALFA_RawDataReadOut_charge.h.

◆ m_PMFId

uint16_t ALFA_RawDataReadOut_charge::m_PMFId
private

Definition at line 52 of file ALFA_RawDataReadOut_charge.h.

◆ m_SlotId

uint16_t ALFA_RawDataReadOut_charge::m_SlotId
private

Definition at line 38 of file ALFA_RawDataReadOut_charge.h.

◆ m_wcnt

uint16_t ALFA_RawDataReadOut_charge::m_wcnt
private

Definition at line 45 of file ALFA_RawDataReadOut_charge.h.

◆ m_word

uint32_t ALFA_ReadOut::m_word
protectedinherited

Definition at line 40 of file ALFA_ReadOut.h.

◆ m_wordHeader

uint16_t ALFA_RawDataReadOut_charge::m_wordHeader
private

Definition at line 35 of file ALFA_RawDataReadOut_charge.h.

◆ s_BOTvalue

constexpr uint16_t ALFA_RawDataReadOut_charge::s_BOTvalue = 0xa
staticconstexprprivate

Definition at line 72 of file ALFA_RawDataReadOut_charge.h.

◆ s_EOTvalue

constexpr uint16_t ALFA_RawDataReadOut_charge::s_EOTvalue = 0xc
staticconstexprprivate

Definition at line 75 of file ALFA_RawDataReadOut_charge.h.

◆ s_headerBits

constexpr uint16_t ALFA_RawDataReadOut_charge::s_headerBits = 0xf
staticconstexprprivate

Definition at line 69 of file ALFA_RawDataReadOut_charge.h.

◆ s_headerPos

constexpr uint16_t ALFA_RawDataReadOut_charge::s_headerPos = 28
staticconstexprprivate

Definition at line 68 of file ALFA_RawDataReadOut_charge.h.

◆ s_TSMvalue_charge

constexpr uint16_t ALFA_RawDataReadOut_charge::s_TSMvalue_charge = 0x4
staticconstexprprivate

Definition at line 78 of file ALFA_RawDataReadOut_charge.h.


The documentation for this class was generated from the following files:
ALFA_RawDataReadOut_charge::is_EOT
bool is_EOT() const
Definition: ALFA_RawDataReadOut_charge.h:96
ALFA_RawDataReadOut_charge::m_ChargeChan
std::vector< uint32_t > m_ChargeChan
Definition: ALFA_RawDataReadOut_charge.h:61
ALFA_RawDataReadOut_charge::m_PMFId
uint16_t m_PMFId
Definition: ALFA_RawDataReadOut_charge.h:52
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
ALFA_RawDataReadOut_charge::m_ecnt_EOT
uint16_t m_ecnt_EOT
Definition: ALFA_RawDataReadOut_charge.h:41
ALFA_RawDataReadOut_charge::s_headerBits
static constexpr uint16_t s_headerBits
Definition: ALFA_RawDataReadOut_charge.h:69
ALFA_RawDataReadOut_charge::s_headerPos
static constexpr uint16_t s_headerPos
Definition: ALFA_RawDataReadOut_charge.h:68
ALFA_RawDataReadOut_charge::s_TSMvalue_charge
static constexpr uint16_t s_TSMvalue_charge
Definition: ALFA_RawDataReadOut_charge.h:78
ALFA_RawDataReadOut_charge::is_TDCch
bool is_TDCch() const
Definition: ALFA_RawDataReadOut_charge.h:98
ALFA_RawDataReadOut_charge::m_SlotId
uint16_t m_SlotId
Definition: ALFA_RawDataReadOut_charge.h:38
ALFA_RawDataReadOut_charge::s_BOTvalue
static constexpr uint16_t s_BOTvalue
Definition: ALFA_RawDataReadOut_charge.h:72
ALFA_RawDataReadOut_charge::m_bit27_24
uint16_t m_bit27_24
Definition: ALFA_RawDataReadOut_charge.h:59
ALFA_RawDataReadOut_charge::m_dataWord
uint32_t m_dataWord
Definition: ALFA_RawDataReadOut_charge.h:33
ALFA_ReadOut::m_word
uint32_t m_word
Definition: ALFA_ReadOut.h:40
ALFA_RawDataReadOut_charge::m_FiberFirmwareId
uint16_t m_FiberFirmwareId
Definition: ALFA_RawDataReadOut_charge.h:50
ALFA_RawDataReadOut_charge::m_bit24_27
uint16_t m_bit24_27
Definition: ALFA_RawDataReadOut_charge.h:58
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:88
ALFA_RawDataReadOut_charge::m_LsbTdcId
uint16_t m_LsbTdcId
Definition: ALFA_RawDataReadOut_charge.h:39
lumiFormat.i
int i
Definition: lumiFormat.py:92
ALFA_RawDataReadOut_charge::m_wcnt
uint16_t m_wcnt
Definition: ALFA_RawDataReadOut_charge.h:45
ALFA_RawDataReadOut_charge::m_ChargeChanId
uint16_t m_ChargeChanId
Definition: ALFA_RawDataReadOut_charge.h:54
ALFA_RawDataReadOut_charge::s_EOTvalue
static constexpr uint16_t s_EOTvalue
Definition: ALFA_RawDataReadOut_charge.h:75
ALFA_RawDataReadOut_charge::setZero
void setZero()
Definition: ALFA_RawDataReadOut_charge.cxx:76
ALFA_RawDataReadOut_charge::m_ChannelNumId
uint16_t m_ChannelNumId
Definition: ALFA_RawDataReadOut_charge.h:53
ALFA_RawDataReadOut_charge::m_MBId
uint16_t m_MBId
Definition: ALFA_RawDataReadOut_charge.h:49
ALFA_RawDataReadOut_charge::m_bcId
uint16_t m_bcId
Definition: ALFA_RawDataReadOut_charge.h:42
ALFA_RawDataReadOut_charge::m_bit12
bool m_bit12
Definition: ALFA_RawDataReadOut_charge.h:56
ALFA_RawDataReadOut_charge::m_ecnt_BOT
uint16_t m_ecnt_BOT
Definition: ALFA_RawDataReadOut_charge.h:40
ALFA_RawDataReadOut_charge::m_wordHeader
uint16_t m_wordHeader
Definition: ALFA_RawDataReadOut_charge.h:35
ALFA_ReadOut::getBitsWord
constexpr std::pair< uint32_t, uint16_t > getBitsWord(const uint16_t bstart, const uint16_t bstop)
Definition: ALFA_ReadOut.h:21
ALFA_ReadOut::getBits
uint32_t getBits(std::pair< uint32_t, uint16_t > in)
Definition: ALFA_ReadOut.h:29
xAOD::bool
setBGCode setTAP setLVL2ErrorBits bool
Definition: TrigDecision_v1.cxx:60
ALFA_RawDataReadOut_charge::is_BOT
bool is_BOT() const
Definition: ALFA_RawDataReadOut_charge.h:94