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

#include <L1CaloRdoEfexTower.h>

Inheritance diagram for L1CaloRdoEfexTower:
Collaboration diagram for L1CaloRdoEfexTower:

Public Member Functions

 L1CaloRdoEfexTower (int crate, int module, int eta, int phi, int layer, const L1CaloDetectorRegion &region)
 
virtual std::string getType () const
 
bool getCrcError () const
 
const std::vector< uint32_t > & getSupercells () const
 
uint32_t getFpgaNumber () const
 
uint32_t getMgtNumber () const
 
uint32_t getWordNumber () const
 
uint32_t getMinipodNumber () const
 
uint32_t getFibreNumber () const
 
bool sameDatum (const L1CaloRdoEfexTower &rhs) const
 
void setSupercells (std::vector< uint32_t > &supercells)
 
void setHardwareInfo (uint32_t fpga, uint32_t mgt, uint32_t word, uint32_t mpod, uint32_t fibre, uint32_t overlap)
 
bool isCoreTower () const
 
void setCopy (std::list< L1CaloRdoEfexTower >::const_iterator &copy, bool exists)
 
const std::list< L1CaloRdoEfexTower >::const_iterator & getCopy () const
 
bool hasCopy () const
 
int getCrate () const
 
int getModule () const
 
int getEta () const
 
int getPhi () const
 
int getLayer () const
 
int getValue (size_t slice) const
 
int getValue () const
 
int getFlag (size_t slice) const
 
int getFlag () const
 
int getL1aPos () const
 
L1CaloDetectorRegion getRegion () const
 
const std::list< L1CaloRdoRodInfo >::const_iterator & getRodInfo () const
 
int getModuleStatus () const
 
bool getModuleErrorGlinkParity () const
 
bool getModuleErrorGlinkProtocol () const
 
bool getModuleErrorBcnMismatch () const
 
bool getModuleErrorFifoOverflow () const
 
bool getModuleErrorSpecific () const
 
bool getModuleErrorUnused () const
 
bool getModuleErrorGlinkTimeout () const
 
bool getModuleErrorGlinkDown () const
 
size_t numSlices () const
 
bool sameDatum (const L1CaloRdo &rhs) const
 
void setValue (int val, size_t slice)
 
void setValue (int val)
 
void setFlag (int flag, size_t slice)
 
void setFlag (int flag)
 
void setRodInfo (std::list< L1CaloRdoRodInfo >::const_iterator &rodInfo)
 
void info () const
 
virtual void infoSpecific () const
 

Protected Member Functions

void setRegion (const L1CaloDetectorRegion &region)
 

Private Attributes

std::vector< uint32_t > m_supercells
 
uint32_t m_fpgaNumber
 
uint32_t m_mgtNumber
 
uint32_t m_wordNumber
 
uint32_t m_mpodNumber
 
uint32_t m_fibreNumber
 
std::list< L1CaloRdoEfexTower >::const_iterator m_copy
 
bool m_copyExists
 
bool m_overlap
 
int m_crate
 
int m_module
 
int m_eta
 
int m_phi
 
int m_layer
 
std::vector< int > m_vals
 
std::vector< int > m_flags
 
int m_l1aPos
 
L1CaloDetectorRegion m_region
 
std::list< L1CaloRdoRodInfo >::const_iterator m_rodInfo
 

Detailed Description

Definition at line 9 of file L1CaloRdoEfexTower.h.

Constructor & Destructor Documentation

◆ L1CaloRdoEfexTower()

L1CaloRdoEfexTower::L1CaloRdoEfexTower ( int  crate,
int  module,
int  eta,
int  phi,
int  layer,
const L1CaloDetectorRegion region 
)

Definition at line 5 of file L1CaloRdoEfexTower.cxx.

7 : L1CaloRdo( crate, module, eta, phi, layer, 1 )
8 , m_fpgaNumber( 0 )
9 , m_mgtNumber( 0 )
10 , m_wordNumber( 0 )
11 , m_mpodNumber( 0 )
12 , m_fibreNumber( 0 )
13 , m_copyExists( false )
14 , m_overlap( 0 )
15 {
16  // At the moment the decoding needs to use the EfexCellMapping class
17  // so we already have a detector region (as well as local eta & phi)
18  // and can just store it.
19  setRegion( region );
20 }

Member Function Documentation

◆ getCopy()

const std::list< L1CaloRdoEfexTower >::const_iterator & L1CaloRdoEfexTower::getCopy ( ) const

Definition at line 114 of file L1CaloRdoEfexTower.cxx.

115 {
116  return m_copy;
117 }

◆ getCrate()

int L1CaloRdo::getCrate ( ) const
inherited

Definition at line 73 of file L1CaloRdo.cxx.

74 {
75  return m_crate;
76 }

◆ getCrcError()

bool L1CaloRdoEfexTower::getCrcError ( ) const

Definition at line 29 of file L1CaloRdoEfexTower.cxx.

30 {
31  // **FIXME** Implement (if appropriate). And/or other error flags.
32  return false;
33 }

◆ getEta()

int L1CaloRdo::getEta ( ) const
inherited

Definition at line 85 of file L1CaloRdo.cxx.

86 {
87  return m_eta;
88 }

◆ getFibreNumber()

uint32_t L1CaloRdoEfexTower::getFibreNumber ( ) const

Definition at line 68 of file L1CaloRdoEfexTower.cxx.

69 {
70  return m_fibreNumber;
71 }

◆ getFlag() [1/2]

int L1CaloRdo::getFlag ( ) const
inherited

Definition at line 125 of file L1CaloRdo.cxx.

126 {
127  return getFlag( getL1aPos() );
128 }

◆ getFlag() [2/2]

int L1CaloRdo::getFlag ( size_t  slice) const
inherited

Definition at line 117 of file L1CaloRdo.cxx.

118 {
119  if ( slice < m_flags.size() )
120  return m_flags[slice];
121  return 0;
122 }

◆ getFpgaNumber()

uint32_t L1CaloRdoEfexTower::getFpgaNumber ( ) const

Definition at line 44 of file L1CaloRdoEfexTower.cxx.

45 {
46  return m_fpgaNumber;
47 }

◆ getL1aPos()

int L1CaloRdo::getL1aPos ( ) const
inherited

Definition at line 131 of file L1CaloRdo.cxx.

132 {
133  return m_l1aPos;
134 }

◆ getLayer()

int L1CaloRdo::getLayer ( ) const
inherited

Definition at line 97 of file L1CaloRdo.cxx.

98 {
99  return m_layer;
100 }

◆ getMgtNumber()

uint32_t L1CaloRdoEfexTower::getMgtNumber ( ) const

Definition at line 50 of file L1CaloRdoEfexTower.cxx.

51 {
52  return m_mgtNumber;
53 }

◆ getMinipodNumber()

uint32_t L1CaloRdoEfexTower::getMinipodNumber ( ) const

Definition at line 62 of file L1CaloRdoEfexTower.cxx.

63 {
64  return m_mpodNumber;
65 }

◆ getModule()

int L1CaloRdo::getModule ( ) const
inherited

Definition at line 79 of file L1CaloRdo.cxx.

80 {
81  return m_module;
82 }

◆ getModuleErrorBcnMismatch()

bool L1CaloRdo::getModuleErrorBcnMismatch ( ) const
inherited

Definition at line 168 of file L1CaloRdo.cxx.

169 {
170  return getModuleStatus( ) & 0x04 ;
171 }

◆ getModuleErrorFifoOverflow()

bool L1CaloRdo::getModuleErrorFifoOverflow ( ) const
inherited

Definition at line 174 of file L1CaloRdo.cxx.

175 {
176  return getModuleStatus( ) & 0x08 ;
177 }

◆ getModuleErrorGlinkDown()

bool L1CaloRdo::getModuleErrorGlinkDown ( ) const
inherited

Definition at line 198 of file L1CaloRdo.cxx.

199 {
200  return getModuleStatus( ) & 0x80 ;
201 }

◆ getModuleErrorGlinkParity()

bool L1CaloRdo::getModuleErrorGlinkParity ( ) const
inherited

Definition at line 156 of file L1CaloRdo.cxx.

157 {
158  return getModuleStatus( ) & 0x01 ;
159 }

◆ getModuleErrorGlinkProtocol()

bool L1CaloRdo::getModuleErrorGlinkProtocol ( ) const
inherited

Definition at line 162 of file L1CaloRdo.cxx.

163 {
164  return getModuleStatus( ) & 0x02 ;
165 }

◆ getModuleErrorGlinkTimeout()

bool L1CaloRdo::getModuleErrorGlinkTimeout ( ) const
inherited

Definition at line 192 of file L1CaloRdo.cxx.

193 {
194  return getModuleStatus( ) & 0x40 ;
195 }

◆ getModuleErrorSpecific()

bool L1CaloRdo::getModuleErrorSpecific ( ) const
inherited

Definition at line 180 of file L1CaloRdo.cxx.

181 {
182  return getModuleStatus( ) & 0x10 ;
183 }

◆ getModuleErrorUnused()

bool L1CaloRdo::getModuleErrorUnused ( ) const
inherited

Definition at line 186 of file L1CaloRdo.cxx.

187 {
188  return getModuleStatus( ) & 0x20 ;
189 }

◆ getModuleStatus()

int L1CaloRdo::getModuleStatus ( ) const
inherited

Definition at line 150 of file L1CaloRdo.cxx.

151 {
152  return m_rodInfo->getModuleStatus( getModule() );
153 }

◆ getPhi()

int L1CaloRdo::getPhi ( ) const
inherited

Definition at line 91 of file L1CaloRdo.cxx.

92 {
93  return m_phi;
94 }

◆ getRegion()

L1CaloDetectorRegion L1CaloRdo::getRegion ( ) const
inherited

Definition at line 137 of file L1CaloRdo.cxx.

138 {
139  return m_region;
140 }

◆ getRodInfo()

const std::list< L1CaloRdoRodInfo >::const_iterator & L1CaloRdo::getRodInfo ( ) const
inherited

Definition at line 144 of file L1CaloRdo.cxx.

145 {
146  return m_rodInfo;
147 }

◆ getSupercells()

const std::vector< uint32_t > & L1CaloRdoEfexTower::getSupercells ( ) const

Definition at line 36 of file L1CaloRdoEfexTower.cxx.

37 {
38  return m_supercells;
39 }

◆ getType()

std::string L1CaloRdoEfexTower::getType ( ) const
virtual

Implements L1CaloRdo.

Definition at line 23 of file L1CaloRdoEfexTower.cxx.

24 {
25  return std::string( "EfexTower" );
26 }

◆ getValue() [1/2]

int L1CaloRdo::getValue ( ) const
inherited

Definition at line 111 of file L1CaloRdo.cxx.

112 {
113  return getValue( getL1aPos() );
114 }

◆ getValue() [2/2]

int L1CaloRdo::getValue ( size_t  slice) const
inherited

Definition at line 103 of file L1CaloRdo.cxx.

104 {
105  if ( slice < m_vals.size() )
106  return m_vals[slice];
107  return 0;
108 }

◆ getWordNumber()

uint32_t L1CaloRdoEfexTower::getWordNumber ( ) const

Definition at line 56 of file L1CaloRdoEfexTower.cxx.

57 {
58  return m_wordNumber;
59 }

◆ hasCopy()

bool L1CaloRdoEfexTower::hasCopy ( ) const

Definition at line 120 of file L1CaloRdoEfexTower.cxx.

121 {
122  return m_copyExists;
123 }

◆ info()

void L1CaloRdo::info ( ) const
inherited

Definition at line 258 of file L1CaloRdo.cxx.

259 {
260  std::cout << "RDO Object Type: " << getType()
261  << " Crate: " << getCrate()
262  << " Module: " << getModule()
263  << " Eta: " << getEta()
264  << " Phi: " << getPhi()
265  << " Layer: " << getLayer() << std::endl;
266  std::cout << " Values: " << std::hex;
267  for ( size_t i = 0 ; i < m_vals.size() ; ++i )
268  std::cout << getValue(i) << " ";
269  std::cout << " Flags: ";
270  for ( size_t i = 0 ; i < m_flags.size() ; ++i )
271  std::cout << getFlag(i) << " ";
272  std::cout << std::endl << std::dec;
273  infoSpecific();
274 }

◆ infoSpecific()

void L1CaloRdo::infoSpecific ( ) const
virtualinherited

Reimplemented in L1CaloRdoEfexTob.

Definition at line 277 of file L1CaloRdo.cxx.

278 {
279 }

◆ isCoreTower()

bool L1CaloRdoEfexTower::isCoreTower ( ) const

Definition at line 101 of file L1CaloRdoEfexTower.cxx.

102 {
103  return (m_overlap == 0);
104 }

◆ numSlices()

size_t L1CaloRdo::numSlices ( ) const
inherited

Definition at line 204 of file L1CaloRdo.cxx.

205 {
206  return m_vals.size();
207 }

◆ sameDatum() [1/2]

bool L1CaloRdo::sameDatum ( const L1CaloRdo rhs) const
inherited

Definition at line 210 of file L1CaloRdo.cxx.

211 {
212  if ( m_crate != rhs.m_crate )
213  return false;
214  if ( m_module != rhs.m_module )
215  return false;
216  if ( m_eta != rhs.m_eta )
217  return false;
218  if ( m_phi != rhs.m_phi )
219  return false;
220  if ( m_layer != rhs.m_layer )
221  return false;
222  return true;
223 }

◆ sameDatum() [2/2]

bool L1CaloRdoEfexTower::sameDatum ( const L1CaloRdoEfexTower rhs) const

Definition at line 74 of file L1CaloRdoEfexTower.cxx.

75 {
76  // We can have overlaps between FPGAs in the same module.
77  if ( m_fpgaNumber != rhs.m_fpgaNumber )
78  return false;
79  return L1CaloRdo::sameDatum( rhs );
80 }

◆ setCopy()

void L1CaloRdoEfexTower::setCopy ( std::list< L1CaloRdoEfexTower >::const_iterator &  copy,
bool  exists 
)

Definition at line 107 of file L1CaloRdoEfexTower.cxx.

108 {
109  m_copy = copy;
111 }

◆ setFlag() [1/2]

void L1CaloRdo::setFlag ( int  flag)
inherited

Definition at line 246 of file L1CaloRdo.cxx.

247 {
248  setFlag( flag, getL1aPos() );
249 }

◆ setFlag() [2/2]

void L1CaloRdo::setFlag ( int  flag,
size_t  slice 
)
inherited

Definition at line 239 of file L1CaloRdo.cxx.

240 {
241  if ( slice < m_flags.size() )
242  m_flags[slice] = flag;
243 }

◆ setHardwareInfo()

void L1CaloRdoEfexTower::setHardwareInfo ( uint32_t  fpga,
uint32_t  mgt,
uint32_t  word,
uint32_t  mpod,
uint32_t  fibre,
uint32_t  overlap 
)

Definition at line 89 of file L1CaloRdoEfexTower.cxx.

91 {
92  m_fpgaNumber = fpga;
93  m_mgtNumber = mgt;
94  m_wordNumber = word;
95  m_mpodNumber = mpod;
96  m_fibreNumber = fibre;
97  m_overlap = overlap;
98 }

◆ setRegion()

void L1CaloRdo::setRegion ( const L1CaloDetectorRegion region)
protectedinherited

Definition at line 283 of file L1CaloRdo.cxx.

284 {
285  m_region = region;
286 }

◆ setRodInfo()

void L1CaloRdo::setRodInfo ( std::list< L1CaloRdoRodInfo >::const_iterator &  rodInfo)
inherited

Definition at line 252 of file L1CaloRdo.cxx.

253 {
254  m_rodInfo = rodInfo;
255 }

◆ setSupercells()

void L1CaloRdoEfexTower::setSupercells ( std::vector< uint32_t > &  supercells)

Definition at line 83 of file L1CaloRdoEfexTower.cxx.

84 {
85  m_supercells = supercells;
86 }

◆ setValue() [1/2]

void L1CaloRdo::setValue ( int  val)
inherited

Definition at line 233 of file L1CaloRdo.cxx.

234 {
235  setValue( val, getL1aPos() );
236 }

◆ setValue() [2/2]

void L1CaloRdo::setValue ( int  val,
size_t  slice 
)
inherited

Definition at line 226 of file L1CaloRdo.cxx.

227 {
228  if ( slice < m_vals.size() )
229  m_vals[slice] = val;
230 }

Member Data Documentation

◆ m_copy

std::list<L1CaloRdoEfexTower>::const_iterator L1CaloRdoEfexTower::m_copy
private

Definition at line 43 of file L1CaloRdoEfexTower.h.

◆ m_copyExists

bool L1CaloRdoEfexTower::m_copyExists
private

Definition at line 44 of file L1CaloRdoEfexTower.h.

◆ m_crate

int L1CaloRdo::m_crate
privateinherited

Definition at line 73 of file L1CaloRdo.h.

◆ m_eta

int L1CaloRdo::m_eta
privateinherited

Definition at line 75 of file L1CaloRdo.h.

◆ m_fibreNumber

uint32_t L1CaloRdoEfexTower::m_fibreNumber
private

Definition at line 42 of file L1CaloRdoEfexTower.h.

◆ m_flags

std::vector<int> L1CaloRdo::m_flags
privateinherited

Definition at line 79 of file L1CaloRdo.h.

◆ m_fpgaNumber

uint32_t L1CaloRdoEfexTower::m_fpgaNumber
private

Definition at line 38 of file L1CaloRdoEfexTower.h.

◆ m_l1aPos

int L1CaloRdo::m_l1aPos
privateinherited

Definition at line 80 of file L1CaloRdo.h.

◆ m_layer

int L1CaloRdo::m_layer
privateinherited

Definition at line 77 of file L1CaloRdo.h.

◆ m_mgtNumber

uint32_t L1CaloRdoEfexTower::m_mgtNumber
private

Definition at line 39 of file L1CaloRdoEfexTower.h.

◆ m_module

int L1CaloRdo::m_module
privateinherited

Definition at line 74 of file L1CaloRdo.h.

◆ m_mpodNumber

uint32_t L1CaloRdoEfexTower::m_mpodNumber
private

Definition at line 41 of file L1CaloRdoEfexTower.h.

◆ m_overlap

bool L1CaloRdoEfexTower::m_overlap
private

Definition at line 45 of file L1CaloRdoEfexTower.h.

◆ m_phi

int L1CaloRdo::m_phi
privateinherited

Definition at line 76 of file L1CaloRdo.h.

◆ m_region

L1CaloDetectorRegion L1CaloRdo::m_region
privateinherited

Definition at line 82 of file L1CaloRdo.h.

◆ m_rodInfo

std::list<L1CaloRdoRodInfo>::const_iterator L1CaloRdo::m_rodInfo
privateinherited

Definition at line 86 of file L1CaloRdo.h.

◆ m_supercells

std::vector<uint32_t> L1CaloRdoEfexTower::m_supercells
private

Definition at line 37 of file L1CaloRdoEfexTower.h.

◆ m_vals

std::vector<int> L1CaloRdo::m_vals
privateinherited

Definition at line 78 of file L1CaloRdo.h.

◆ m_wordNumber

uint32_t L1CaloRdoEfexTower::m_wordNumber
private

Definition at line 40 of file L1CaloRdoEfexTower.h.


The documentation for this class was generated from the following files:
L1CaloRdo::m_rodInfo
std::list< L1CaloRdoRodInfo >::const_iterator m_rodInfo
Definition: L1CaloRdo.h:86
L1CaloRdo::m_crate
int m_crate
Definition: L1CaloRdo.h:73
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
L1CaloRdo::getModule
int getModule() const
Definition: L1CaloRdo.cxx:79
L1CaloRdo::infoSpecific
virtual void infoSpecific() const
Definition: L1CaloRdo.cxx:277
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
L1CaloRdoEfexTower::m_overlap
bool m_overlap
Definition: L1CaloRdoEfexTower.h:45
L1CaloRdo::getPhi
int getPhi() const
Definition: L1CaloRdo.cxx:91
L1CaloRdo::m_vals
std::vector< int > m_vals
Definition: L1CaloRdo.h:78
L1CaloRdo::getL1aPos
int getL1aPos() const
Definition: L1CaloRdo.cxx:131
L1CaloRdo::m_region
L1CaloDetectorRegion m_region
Definition: L1CaloRdo.h:82
L1CaloRdoEfexTower::m_wordNumber
uint32_t m_wordNumber
Definition: L1CaloRdoEfexTower.h:40
L1CaloRdo::setValue
void setValue(int val, size_t slice)
Definition: L1CaloRdo.cxx:226
L1CaloRdo::m_phi
int m_phi
Definition: L1CaloRdo.h:76
L1CaloRdoEfexTower::m_copy
std::list< L1CaloRdoEfexTower >::const_iterator m_copy
Definition: L1CaloRdoEfexTower.h:43
L1CaloRdo::getType
virtual std::string getType() const =0
L1CaloRdoEfexTower::m_fibreNumber
uint32_t m_fibreNumber
Definition: L1CaloRdoEfexTower.h:42
L1CaloRdoEfexTower::m_copyExists
bool m_copyExists
Definition: L1CaloRdoEfexTower.h:44
python.PyAthena.module
module
Definition: PyAthena.py:134
perfmonmt-refit.slice
slice
Definition: perfmonmt-refit.py:52
lumiFormat.i
int i
Definition: lumiFormat.py:92
L1CaloRdoEfexTower::m_mgtNumber
uint32_t m_mgtNumber
Definition: L1CaloRdoEfexTower.h:39
L1CaloRdo::L1CaloRdo
L1CaloRdo()
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
L1CaloRdo::m_eta
int m_eta
Definition: L1CaloRdo.h:75
master.flag
bool flag
Definition: master.py:29
L1CaloRdo::m_module
int m_module
Definition: L1CaloRdo.h:74
L1CaloRdo::m_flags
std::vector< int > m_flags
Definition: L1CaloRdo.h:79
L1CaloRdo::m_l1aPos
int m_l1aPos
Definition: L1CaloRdo.h:80
L1CaloRdoEfexTower::m_supercells
std::vector< uint32_t > m_supercells
Definition: L1CaloRdoEfexTower.h:37
L1CaloRdo::m_layer
int m_layer
Definition: L1CaloRdo.h:77
L1CaloRdoEfexTower::m_fpgaNumber
uint32_t m_fpgaNumber
Definition: L1CaloRdoEfexTower.h:38
L1CaloRdo::getModuleStatus
int getModuleStatus() const
Definition: L1CaloRdo.cxx:150
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
L1CaloRdo::setFlag
void setFlag(int flag, size_t slice)
Definition: L1CaloRdo.cxx:239
L1CaloRdo::getLayer
int getLayer() const
Definition: L1CaloRdo.cxx:97
L1CaloRdo::setRegion
void setRegion(const L1CaloDetectorRegion &region)
Definition: L1CaloRdo.cxx:283
calibdata.copy
bool copy
Definition: calibdata.py:27
L1CaloRdo::getFlag
int getFlag() const
Definition: L1CaloRdo.cxx:125
L1CaloRdo::getEta
int getEta() const
Definition: L1CaloRdo.cxx:85
python.dummyaccess.exists
def exists(filename)
Definition: dummyaccess.py:9
L1CaloRdo::sameDatum
bool sameDatum(const L1CaloRdo &rhs) const
Definition: L1CaloRdo.cxx:210
L1CaloRdo::getCrate
int getCrate() const
Definition: L1CaloRdo.cxx:73
L1CaloRdo::getValue
int getValue() const
Definition: L1CaloRdo.cxx:111
L1CaloRdoEfexTower::m_mpodNumber
uint32_t m_mpodNumber
Definition: L1CaloRdoEfexTower.h:41