ATLAS Offline Software
Loading...
Searching...
No Matches
Muon::TGC_Hid2RESrcID Class Reference

This class provides conversion between TGC RDO Id and RESrcID. More...

#include <TGC_Hid2RESrcID.h>

Collaboration diagram for Muon::TGC_Hid2RESrcID:

Public Member Functions

 TGC_Hid2RESrcID ()=default
 Constrcutor.
 ~TGC_Hid2RESrcID ()=default
 Destrcutor.
const std::vector< uint32_t > & allRobIds () const
 Return all the ROB IDs.
void fillAllRobIds ()
 Fill all the ROB IDs.

Static Public Member Functions

static uint32_t getRodID (const TgcRdo *rdo)
 Make a ROD Source ID for TGC RDO.
static uint32_t getRodID (uint16_t subDetectorId, uint16_t rodId)
 Make a ROD Source ID for SubDetector ID and ROD ID.
static uint32_t getRodID (const Identifier &offlineId, const TgcCablingMap *cabling)
 Make a ROD Source ID for TgcDigitCollection.
static uint32_t getRobID (uint32_t rod_id)
 Make a ROB Source ID from a ROD source ID.
static uint32_t getRosID (uint32_t rob_id)
 Make a ROS Source ID from a ROB source ID.
static uint32_t getDetID (uint32_t ros_id)
 Make a SubDetector ID from ROS source ID.

Private Attributes

std::vector< uint32_t > m_robIDs

Detailed Description

This class provides conversion between TGC RDO Id and RESrcID.

RESrcID is used for identifying each ROD.

Author
Susumu Oda Susum.nosp@m.u.Od.nosp@m.a@cer.nosp@m.n.ch

This class was developed by Tadashi Maeno based on MDT_Hid2RESrcID written by Naples.

Definition at line 28 of file TGC_Hid2RESrcID.h.

Constructor & Destructor Documentation

◆ TGC_Hid2RESrcID()

Muon::TGC_Hid2RESrcID::TGC_Hid2RESrcID ( )
default

Constrcutor.

◆ ~TGC_Hid2RESrcID()

Muon::TGC_Hid2RESrcID::~TGC_Hid2RESrcID ( )
default

Destrcutor.

Member Function Documentation

◆ allRobIds()

const std::vector< uint32_t > & Muon::TGC_Hid2RESrcID::allRobIds ( ) const
inline

Return all the ROB IDs.

Definition at line 51 of file TGC_Hid2RESrcID.h.

51{ return m_robIDs; }
std::vector< uint32_t > m_robIDs

◆ fillAllRobIds()

void Muon::TGC_Hid2RESrcID::fillAllRobIds ( )

Fill all the ROB IDs.

Definition at line 78 of file TGC_Hid2RESrcID.cxx.

78 {
79 TgcRdoIdHash rdoIdHash;
80 int rdoIdHash_max = rdoIdHash.max();
81 for (int i = 0; i < rdoIdHash_max; i++) {
82 SourceIdentifier sid(
83 static_cast<eformat::SubDetector>(rdoIdHash.subDetectorId(i)),
84 rdoIdHash.rodId(i));
85
86 m_robIDs.push_back(getRobID(sid.simple_code()));
87 }
88}
static uint32_t getRobID(uint32_t rod_id)
Make a ROB Source ID from a ROD source ID.
uint16_t rodId(int i) const
reverse conversion : ROD ID
int max() const
return maximum number of IDs
uint16_t subDetectorId(int i) const
reverse conversion for SubDetectorID and ROD ID

◆ getDetID()

uint32_t Muon::TGC_Hid2RESrcID::getDetID ( uint32_t ros_id)
static

Make a SubDetector ID from ROS source ID.

Definition at line 68 of file TGC_Hid2RESrcID.cxx.

68 {
69 // ROS to DET
70 SourceIdentifier id(ros_id);
71 SourceIdentifier id2(id.subdetector_id(), 0);
72
73 // return Source ID
74 return id2.code();
75}
HWIdentifier id2

◆ getRobID()

uint32_t Muon::TGC_Hid2RESrcID::getRobID ( uint32_t rod_id)
static

Make a ROB Source ID from a ROD source ID.

Definition at line 51 of file TGC_Hid2RESrcID.cxx.

51 {
52 // return Source ID.
53 // ROD source ID and ROB source ID are identical for TGC.
54 return rod_id;
55}

◆ getRodID() [1/3]

uint32_t Muon::TGC_Hid2RESrcID::getRodID ( const Identifier & offlineId,
const TgcCablingMap * cabling )
static

Make a ROD Source ID for TgcDigitCollection.

Definition at line 36 of file TGC_Hid2RESrcID.cxx.

37 {
38 int subDetectorId;
39 int rodId;
40 cabling->getReadoutIDfromElementID(offlineId, subDetectorId, rodId);
41
42 // get Source ID
43 SourceIdentifier sid(static_cast<eformat::SubDetector>(subDetectorId),
44 static_cast<uint16_t>(rodId));
45
46 // return Source ID
47 return sid.code();
48}
setWord1 uint16_t

◆ getRodID() [2/3]

uint32_t Muon::TGC_Hid2RESrcID::getRodID ( const TgcRdo * rdo)
static

Make a ROD Source ID for TGC RDO.

Definition at line 14 of file TGC_Hid2RESrcID.cxx.

14 {
15 // get Source ID
16 SourceIdentifier sid(
17 static_cast<eformat::SubDetector>(rdo->subDetectorId()),
18 static_cast<uint16_t>(rdo->rodId()));
19
20 // return Source ID
21 return sid.code();
22}
uint16_t rodId() const
Definition TgcRdo.h:138
uint16_t subDetectorId() const
Definition TgcRdo.h:134

◆ getRodID() [3/3]

uint32_t Muon::TGC_Hid2RESrcID::getRodID ( uint16_t subDetectorId,
uint16_t rodId )
static

Make a ROD Source ID for SubDetector ID and ROD ID.

Definition at line 25 of file TGC_Hid2RESrcID.cxx.

26 {
27 // get Source ID
28 SourceIdentifier sid(static_cast<eformat::SubDetector>(subDetectorId),
29 rodId);
30
31 // return Source ID
32 return sid.code();
33}

◆ getRosID()

uint32_t Muon::TGC_Hid2RESrcID::getRosID ( uint32_t rob_id)
static

Make a ROS Source ID from a ROB source ID.

Definition at line 58 of file TGC_Hid2RESrcID.cxx.

58 {
59 // Change Module Type to ROS, moduleid = 0
60 SourceIdentifier id(rob_id);
61 SourceIdentifier id2(id.subdetector_id(), 0);
62
63 // return Source ID
64 return id2.code();
65}

Member Data Documentation

◆ m_robIDs

std::vector<uint32_t> Muon::TGC_Hid2RESrcID::m_robIDs
private

Definition at line 57 of file TGC_Hid2RESrcID.h.


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