ATLAS Offline Software
Loading...
Searching...
No Matches
ZdcSrcIdMap Class Reference

This class provides conversion between Lower level Source ID to higher level source ID for L1Calo ByteStream fragments. More...

#include <ZdcSrcIdMap.h>

Collaboration diagram for ZdcSrcIdMap:

Public Member Functions

 ZdcSrcIdMap ()
 ZdcSrcId.

Static Public Member Functions

static uint32_t getRodID (int crate, int slink, int daqOrRoi, eformat::SubDetector subdet)
 Make a ROD Source ID.
static uint32_t getRobID (uint32_t rod_id)
 ROD -> ROB.
static uint32_t getRosID (uint32_t rob_id)
 ROB -> ROS.
static uint32_t getDetID (uint32_t ros_id)
 ROS -> SubDetector.
static int crate (uint32_t code)
 moduleID -> crate
static int daqOrRoi (uint32_t code)
 moduleID -> daqOrRoi
static int slink (uint32_t code)
 moduleID -> slink
static int maxSlinks ()
 Return the maximum possible number of slinks.
static eformat::SubDetector subDet (uint32_t code)
 ID -> sub-detector.

Detailed Description

This class provides conversion between Lower level Source ID to higher level source ID for L1Calo ByteStream fragments.

This is to be used in assembling the fragments from ROD fragments

Author
Peter Faulkner

TRY_LINK_LVL1 Marco Leite

Definition at line 24 of file ZdcSrcIdMap.h.

Constructor & Destructor Documentation

◆ ZdcSrcIdMap()

ZdcSrcIdMap::ZdcSrcIdMap ( )

ZdcSrcId.

This will implement many convertion methods to get the ID down the chain

Definition at line 13 of file ZdcSrcIdMap.cxx.

14{
15}

Member Function Documentation

◆ crate()

int ZdcSrcIdMap::crate ( uint32_t code)
static

moduleID -> crate

Definition at line 55 of file ZdcSrcIdMap.cxx.

56{
57 eformat::helper::SourceIdentifier id(code);
58 return id.module_id() & 0xf;
59}

◆ daqOrRoi()

int ZdcSrcIdMap::daqOrRoi ( uint32_t code)
static

moduleID -> daqOrRoi

Definition at line 63 of file ZdcSrcIdMap.cxx.

64{
65 eformat::helper::SourceIdentifier id(code);
66 return (id.module_id() >> 7) & 0x1;
67}

◆ getDetID()

uint32_t ZdcSrcIdMap::getDetID ( uint32_t ros_id)
static

ROS -> SubDetector.

Definition at line 46 of file ZdcSrcIdMap.cxx.

47{
48 eformat::helper::SourceIdentifier id(ros_id);
49 eformat::helper::SourceIdentifier id2(id.subdetector_id(), 0);
50 return id2.code();
51}
HWIdentifier id2

◆ getRobID()

uint32_t ZdcSrcIdMap::getRobID ( uint32_t rod_id)
static

ROD -> ROB.

Definition at line 30 of file ZdcSrcIdMap.cxx.

31{
32 return rod_id;
33}

◆ getRodID()

uint32_t ZdcSrcIdMap::getRodID ( int crate,
int slink,
int daqOrRoi,
eformat::SubDetector subdet )
static

Make a ROD Source ID.

Definition at line 19 of file ZdcSrcIdMap.cxx.

21{
22 // module ID = r0sscccc (ROD-spec-version1_06d, P33)
23 uint16_t moduleId = (daqOrRoi << 7) | (slink << 4) | crate;
24 eformat::helper::SourceIdentifier helpID(subdet, moduleId);
25 return helpID.code();
26}
static int crate(uint32_t code)
moduleID -> crate
static int daqOrRoi(uint32_t code)
moduleID -> daqOrRoi
static int slink(uint32_t code)
moduleID -> slink
setWord1 uint16_t

◆ getRosID()

uint32_t ZdcSrcIdMap::getRosID ( uint32_t rob_id)
static

ROB -> ROS.

Definition at line 37 of file ZdcSrcIdMap.cxx.

38{
39 eformat::helper::SourceIdentifier id(rob_id);
40 eformat::helper::SourceIdentifier id2(id.subdetector_id(), 0);
41 return id2.code();
42}

◆ maxSlinks()

int ZdcSrcIdMap::maxSlinks ( )
static

Return the maximum possible number of slinks.

Definition at line 80 of file ZdcSrcIdMap.cxx.

81{
82 return 4;
83}

◆ slink()

int ZdcSrcIdMap::slink ( uint32_t code)
static

moduleID -> slink

Definition at line 71 of file ZdcSrcIdMap.cxx.

72{
73 eformat::helper::SourceIdentifier id(code);
74 return (id.module_id() >> 4) & 0x3;
75}

◆ subDet()

eformat::SubDetector ZdcSrcIdMap::subDet ( uint32_t code)
static

ID -> sub-detector.

Definition at line 87 of file ZdcSrcIdMap.cxx.

87 {
88 eformat::helper::SourceIdentifier id(code);
89 return id.subdetector_id();
90}

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