Belle II Software  release-05-01-25
RawData Class Reference

KLM raw data. More...

#include <RawData.h>

Public Member Functions

 RawData (int copper, int slot, const int *buffer, StoreArray< KLMDigitRaw > *klmDigitRaws, KLMDigitRaw **newDigitRaw, bool fillDigitRaws)
 Constructor (unpack KLM raw data). More...
 
 ~RawData ()
 Destructor.
 
uint16_t getLane () const
 Get lane.
 
uint16_t getAxis () const
 Get axis.
 
uint16_t getChannel () const
 Get channel.
 
uint16_t getCTime () const
 Get CTIME.
 
uint16_t getTriggerBits () const
 Get trigger bits.
 
uint16_t getTDC () const
 Get TDC.
 
uint16_t getCharge () const
 Get charge.
 
bool multipleStripHit () const
 Check whether this hit corresponds to multiple strips.
 
void getChannelGroups (std::vector< ChannelGroup > &channelGroups) const
 Get channel groups corresponding to this hit. More...
 

Static Public Member Functions

static uint16_t unpackLane (uint16_t raw)
 Unpack lane. More...
 
static uint16_t unpackAxis (uint16_t raw)
 Unpack axis. More...
 
static uint16_t unpackChannel (uint16_t raw)
 Unpack channel. More...
 
static uint16_t unpackCTime (uint16_t raw)
 Unpack CTIME. More...
 
static uint16_t unpackTriggerBits (uint16_t raw)
 Unpack trigger bits. More...
 
static uint16_t unpackTDC (uint16_t raw)
 Unpack TDC. More...
 
static uint16_t unpackCharge (uint16_t raw)
 Unpack charge.
 

Protected Attributes

uint16_t m_Lane
 Lane (5 bits).
 
uint16_t m_Axis
 Axis (1 bit).
 
uint16_t m_Channel
 Channel (7 bits).
 
uint16_t m_CTime
 CTIME (16 bits).
 
uint16_t m_TriggerBits
 Trigger bits (5 bits).
 
uint16_t m_TDC
 TDC (11 bits).
 
uint16_t m_Charge
 Charge (12 bits).
 

Detailed Description

KLM raw data.

Definition at line 57 of file RawData.h.

Constructor & Destructor Documentation

◆ RawData()

RawData ( int  copper,
int  slot,
const int *  buffer,
StoreArray< KLMDigitRaw > *  klmDigitRaws,
KLMDigitRaw **  newDigitRaw,
bool  fillDigitRaws 
)

Constructor (unpack KLM raw data).

Parameters
[in]copperCopper identifier.
[in]slotSlot number (1-based).
[in]bufferData buffer (to be unpacked).
[in,out]klmDigitRawsKLMDigitRaw array.
[out]newDigitRawNew KLMRawDigit.
[in]fillDigitRawsWhether to fill klmDigitRaws.

Definition at line 22 of file RawData.cc.

26 {
27  uint16_t dataWords[4];
28  dataWords[0] = (buffer[0] >> 16) & 0xFFFF;
29  dataWords[1] = buffer[0] & 0xFFFF;
30  dataWords[2] = (buffer[1] >> 16) & 0xFFFF;
31  dataWords[3] = buffer[1] & 0xFFFF;
32  m_Lane = unpackLane(dataWords[0]);
33  m_Axis = unpackAxis(dataWords[0]);
34  m_Channel = unpackChannel(dataWords[0]);
35  m_CTime = unpackCTime(dataWords[1]);
36  m_TriggerBits = unpackTriggerBits(dataWords[2]);
37  m_TDC = unpackTDC(dataWords[2]);
38  m_Charge = unpackCharge(dataWords[3]);
39  if (fillDigitRaws) {
40  *newDigitRaw = klmDigitRaws->appendNew(copper, slot,
41  dataWords[0], dataWords[1],
42  dataWords[2], dataWords[3]);
43  }
44 }

Member Function Documentation

◆ getChannelGroups()

void getChannelGroups ( std::vector< ChannelGroup > &  channelGroups) const

Get channel groups corresponding to this hit.

Parameters
[out]channelGroupsChannel groups.

Definition at line 50 of file RawData.cc.

◆ unpackAxis()

static uint16_t unpackAxis ( uint16_t  raw)
inlinestatic

Unpack axis.

Parameters
[in]rawRaw-data word.

Definition at line 163 of file RawData.h.

165  {
166  return raw & 0x7F;

◆ unpackChannel()

static uint16_t unpackChannel ( uint16_t  raw)
inlinestatic

Unpack channel.

Parameters
[in]rawRaw-data word.

Definition at line 172 of file RawData.h.

◆ unpackCTime()

static uint16_t unpackCTime ( uint16_t  raw)
inlinestatic

Unpack CTIME.

Parameters
[in]rawRaw-data word.

Definition at line 181 of file RawData.h.

◆ unpackLane()

static uint16_t unpackLane ( uint16_t  raw)
inlinestatic

Unpack lane.

Parameters
[in]rawRaw-data word.

Definition at line 154 of file RawData.h.

◆ unpackTDC()

static uint16_t unpackTDC ( uint16_t  raw)
inlinestatic

Unpack TDC.

Parameters
[in]rawRaw-data word.

Definition at line 199 of file RawData.h.

◆ unpackTriggerBits()

static uint16_t unpackTriggerBits ( uint16_t  raw)
inlinestatic

Unpack trigger bits.

Parameters
[in]rawRaw-data word.

Definition at line 190 of file RawData.h.


The documentation for this class was generated from the following files:
Belle2::KLM::RawData::unpackTriggerBits
static uint16_t unpackTriggerBits(uint16_t raw)
Unpack trigger bits.
Definition: RawData.h:190
Belle2::KLM::RawData::m_CTime
uint16_t m_CTime
CTIME (16 bits).
Definition: RawData.h:224
Belle2::KLM::RawData::m_Axis
uint16_t m_Axis
Axis (1 bit).
Definition: RawData.h:218
Belle2::KLM::RawData::unpackLane
static uint16_t unpackLane(uint16_t raw)
Unpack lane.
Definition: RawData.h:154
Belle2::KLM::RawData::m_Lane
uint16_t m_Lane
Lane (5 bits).
Definition: RawData.h:215
Belle2::KLM::RawData::unpackTDC
static uint16_t unpackTDC(uint16_t raw)
Unpack TDC.
Definition: RawData.h:199
Belle2::KLM::RawData::m_Charge
uint16_t m_Charge
Charge (12 bits).
Definition: RawData.h:233
Belle2::KLM::RawData::unpackChannel
static uint16_t unpackChannel(uint16_t raw)
Unpack channel.
Definition: RawData.h:172
Belle2::KLM::RawData::m_Channel
uint16_t m_Channel
Channel (7 bits).
Definition: RawData.h:221
Belle2::KLM::RawData::m_TriggerBits
uint16_t m_TriggerBits
Trigger bits (5 bits).
Definition: RawData.h:227
Belle2::KLM::RawData::unpackCTime
static uint16_t unpackCTime(uint16_t raw)
Unpack CTIME.
Definition: RawData.h:181
Belle2::KLM::RawData::unpackCharge
static uint16_t unpackCharge(uint16_t raw)
Unpack charge.
Definition: RawData.h:207
Belle2::KLM::RawData::m_TDC
uint16_t m_TDC
TDC (11 bits).
Definition: RawData.h:230
Belle2::KLM::RawData::unpackAxis
static uint16_t unpackAxis(uint16_t raw)
Unpack axis.
Definition: RawData.h:163