ATLAS Offline Software
TGCInnerTrackletSlot.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 namespace LVL1TGCTrigger {
8 
11  {
12  m_sideId = -1;
13  m_slotId = -1;
15  }
16 
18  m_tgcArgs = tgcargs;
19  }
20 
21  void TGCInnerTrackletSlot::setSideId(const int sideId) {
22  m_sideId = sideId;
23  }
24 
26  return m_sideId;
27  }
28 
29  void TGCInnerTrackletSlot::setSlotId(const int slotId) {
30  m_slotId = slotId;
31  }
32 
34  return m_slotId;
35  }
36 
38  for (int region=0; region<NUMBER_OF_REGIONS; region++){
39  for (int readout=0; readout<NUMBER_OF_READOUTS; readout++){
40  for (int iBit=0; iBit<NUMBER_OF_TRIGGER_BITS; iBit++){
41  m_triggerBit[region][readout][iBit] = val;
42  }
43  }
44  }
45  return true;
46  }
47 
48  bool TGCInnerTrackletSlot::setTriggerBit(const unsigned int region, const unsigned int readout, const unsigned int iBit, const bool triggerBit) {
49  if(region>=NUMBER_OF_REGIONS) return false;
50  if(readout>=NUMBER_OF_READOUTS) return false;
51  if(iBit>=NUMBER_OF_TRIGGER_BITS) return false;
52  m_triggerBit[region][readout][iBit] = triggerBit;
53  return true;
54  }
55 
56  bool TGCInnerTrackletSlot::getTriggerBit(const unsigned int region, const unsigned int readout, const unsigned int iBit) const {
57  if(region>=NUMBER_OF_REGIONS) return false;
58  if(readout>=NUMBER_OF_READOUTS) return false;
59  if(iBit>=NUMBER_OF_TRIGGER_BITS) return false;
60 
61  return m_triggerBit[region][readout][iBit];
62  }
63 
65  for(unsigned int region=0; region<NUMBER_OF_REGIONS; region++) {
66  for(unsigned int readout=0; readout<NUMBER_OF_READOUTS; readout++) {
67  for(unsigned int iBit=0; iBit<NUMBER_OF_TRIGGER_BITS; iBit++) {
68  m_triggerBit[region][readout][iBit] = false;
69  }
70  }
71  }
72  }
73 
74  void TGCInnerTrackletSlot::setTriggerWord(unsigned int word){
75  unsigned int tstBit =1;
76  for(unsigned int region=0; region<NUMBER_OF_REGIONS; region++) {
77  for(unsigned int readout=0; readout<NUMBER_OF_READOUTS; readout++) {
78  for(unsigned int iBit=0; iBit<NUMBER_OF_TRIGGER_BITS; iBit++) {
79  m_triggerBit[region][readout][iBit] = ((tstBit & word) !=0 );
80  tstBit = tstBit*2;
81  }
82  }
83  }
84  }
85 
86  unsigned short TGCInnerTrackletSlot::getTriggerWord() const{
87  unsigned int word=0;
88  unsigned int pos =0;
89  for(unsigned int region=0; region<NUMBER_OF_REGIONS; region++) {
90  for(unsigned int readout=0; readout<NUMBER_OF_READOUTS; readout++) {
91  for(unsigned int iBit=0; iBit<NUMBER_OF_TRIGGER_BITS; iBit++) {
92  if (m_triggerBit[region][readout][iBit]) {
93  word += 1 << pos;
94  }
95  pos += 1;
96  }
97  }
98  }
99  return word;
100  }
101 
102 } //end of namespace bracket
LVL1TGCTrigger::TGCInnerTrackletSlot::m_triggerBit
bool m_triggerBit[NUMBER_OF_REGIONS][NUMBER_OF_READOUTS][NUMBER_OF_TRIGGER_BITS]
Definition: TGCInnerTrackletSlot.h:52
TGCInnerTrackletSlot.h
LVL1TGCTrigger::TGCInnerTrackletSlot::NUMBER_OF_REGIONS
@ NUMBER_OF_REGIONS
Definition: TGCInnerTrackletSlot.h:35
LVL1TGCTrigger::TGCInnerTrackletSlot::NUMBER_OF_READOUTS
@ NUMBER_OF_READOUTS
Definition: TGCInnerTrackletSlot.h:38
LVL1TGCTrigger::TGCInnerTrackletSlot::setSideId
void setSideId(const int sideId)
Definition: TGCInnerTrackletSlot.cxx:21
LVL1TGCTrigger::TGCInnerTrackletSlot::getTriggerWord
unsigned short getTriggerWord() const
Definition: TGCInnerTrackletSlot.cxx:86
LVL1TGCTrigger::TGCInnerTrackletSlot::getTriggerBit
bool getTriggerBit(const unsigned int region, const unsigned int readout, const unsigned int iBit) const
Definition: TGCInnerTrackletSlot.cxx:56
LVL1TGCTrigger::TGCInnerTrackletSlot::setTriggerBit
bool setTriggerBit(const unsigned int region, const unsigned int readout, const unsigned int iBit, const bool triggerBit)
Definition: TGCInnerTrackletSlot.cxx:48
LVL1TGCTrigger::TGCInnerTrackletSlot::setSlotId
void setSlotId(const int slotId)
Definition: TGCInnerTrackletSlot.cxx:29
LVL1TGCTrigger::TGCInnerTrackletSlot::m_slotId
int m_slotId
Definition: TGCInnerTrackletSlot.h:49
LVL1TGCTrigger::TGCInnerTrackletSlot::setTgcArguments
void setTgcArguments(const TGCArguments *)
Definition: TGCInnerTrackletSlot.cxx:17
LVL1TGCTrigger::TGCInnerTrackletSlot::NUMBER_OF_TRIGGER_BITS
@ NUMBER_OF_TRIGGER_BITS
Definition: TGCInnerTrackletSlot.h:39
LVL1TGCTrigger::TGCInnerTrackletSlot::m_sideId
int m_sideId
Definition: TGCInnerTrackletSlot.h:46
LVL1TGCTrigger::TGCInnerTrackletSlot::setTriggerBits
bool setTriggerBits(const bool val)
Definition: TGCInnerTrackletSlot.cxx:37
LVL1TGCTrigger
Definition: LVL1TGCTrigger.cxx:47
LVL1TGCTrigger::TGCInnerTrackletSlot::TGCInnerTrackletSlot
TGCInnerTrackletSlot()
Constructor.
Definition: TGCInnerTrackletSlot.cxx:10
LVL1TGCTrigger::TGCArguments
Definition: TGCArguments.h:12
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:18
LVL1TGCTrigger::TGCInnerTrackletSlot::getSideId
int getSideId() const
Definition: TGCInnerTrackletSlot.cxx:25
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
LVL1TGCTrigger::TGCInnerTrackletSlot::m_tgcArgs
const TGCArguments * m_tgcArgs
Definition: TGCInnerTrackletSlot.h:54
LVL1TGCTrigger::TGCInnerTrackletSlot::setTriggerWord
void setTriggerWord(unsigned int word)
Definition: TGCInnerTrackletSlot.cxx:74
LVL1TGCTrigger::TGCInnerTrackletSlot::clearTriggerBits
void clearTriggerBits()
Definition: TGCInnerTrackletSlot.cxx:64
LVL1TGCTrigger::TGCInnerTrackletSlot::getSlotId
int getSlotId() const
Definition: TGCInnerTrackletSlot.cxx:33