![]() |
ATLAS Offline Software
|
CrateEnergy class declaration Simulates behaviour of the Crate-CMM System CMM logic is done in EnergyTrigger. More...
#include <CrateEnergy.h>
Public Member Functions | |
| CrateEnergy (unsigned int crate, const DataVector< ModuleEnergy > *modules, uint32_t maskXE=0xff, uint32_t maskTE=0xff, bool restricted=false) | |
| CrateEnergy (unsigned int crate, const DataVector< EnergyCMXData > *modules, uint32_t maskXE=0xff, uint32_t maskTE=0xff, bool restricted=false) | |
| CrateEnergy (unsigned int crate, unsigned int et, unsigned int exTC, unsigned int eyTC, unsigned int overflowT, unsigned int overflowX, unsigned int overflowY, bool restricted=false) | |
| ~CrateEnergy () | |
| unsigned int | crate () const |
| return crate number | |
| int | et () const |
| return et, ex, ey sums | |
| int | ex () const |
| return crate Ex | |
| int | ey () const |
| return crate Ey | |
| unsigned int | exTC () const |
| 15 bit twos-complement format | |
| unsigned int | eyTC () const |
| return crate Ey in 15-bit twos-complement format (hardware format) | |
| unsigned int | exOverflow () const |
| Overflow bits. | |
| unsigned int | eyOverflow () const |
| return Ey overflow bit | |
| unsigned int | etOverflow () const |
| return Et overflow bit | |
| bool | restricted () const |
| Full or restricted eta range? | |
Private Member Functions | |
| unsigned int | encodeTC (int input) const |
| encode int as 15-bit twos-complement format (hardware Ex/Ey format) | |
| int | decodeTC (unsigned int input) const |
| decode 15-bit twos-complement format (hardware Ex/Ey format) as int | |
Private Attributes | |
| unsigned int | m_crate |
| unsigned int | m_crateEt |
| int | m_crateEx |
| int | m_crateEy |
| unsigned int | m_overflowT |
| unsigned int | m_overflowX |
| unsigned int | m_overflowY |
| bool | m_restricted |
| bool | m_debug |
Static Private Attributes | |
| static const unsigned int | m_sumBitsTC =15 |
| static const unsigned int | m_sumBits =14 |
| static const unsigned int | m_jemEtSaturation = 0x3fff |
CrateEnergy class declaration Simulates behaviour of the Crate-CMM System CMM logic is done in EnergyTrigger.
Definition at line 29 of file CrateEnergy.h.
| LVL1::CrateEnergy::CrateEnergy | ( | unsigned int | crate, |
| const DataVector< ModuleEnergy > * | modules, | ||
| uint32_t | maskXE = 0xff, | ||
| uint32_t | maskTE = 0xff, | ||
| bool | restricted = false ) |
Check crate in range
Added for restricted eta triggers in Run 2
Summing within a crate proceeds as follows:
unsigned 14 bit Ex, Ey, Et sums are formed for each half crate
these sums (= opposite quadrants) are added (Et) or subtracted (Ex, Ey)
to give the crate totals
overflows are propagated using separate bits
Sum ET from modules belonging to this crate in two halves
Check for overflows then truncate quadrant sums
Form crate sums
For total ET we must check for further overflows
Definition at line 16 of file CrateEnergy.cxx.
| LVL1::CrateEnergy::CrateEnergy | ( | unsigned int | crate, |
| const DataVector< EnergyCMXData > * | modules, | ||
| uint32_t | maskXE = 0xff, | ||
| uint32_t | maskTE = 0xff, | ||
| bool | restricted = false ) |
Check crate in range
Added for restricted eta triggers in Run 2
Summing within a crate proceeds as follows:
unsigned 14 bit Ex, Ey, Et sums are formed for each half crate
these sums (= opposite quadrants) are added (Et) or subtracted (Ex, Ey)
to give the crate totals
overflows are propagated using separate bits
Sum ET from modules belonging to this crate in two halves
Check for overflows then truncate quadrant sums
Form crate sums
For total ET we must check for further overflows
Definition at line 94 of file CrateEnergy.cxx.
| LVL1::CrateEnergy::CrateEnergy | ( | unsigned int | crate, |
| unsigned int | et, | ||
| unsigned int | exTC, | ||
| unsigned int | eyTC, | ||
| unsigned int | overflowT, | ||
| unsigned int | overflowX, | ||
| unsigned int | overflowY, | ||
| bool | restricted = false ) |
Check crate in range
Definition at line 172 of file CrateEnergy.cxx.
| LVL1::CrateEnergy::~CrateEnergy | ( | ) |
Definition at line 204 of file CrateEnergy.cxx.
| unsigned int LVL1::CrateEnergy::crate | ( | ) | const |
|
private |
decode 15-bit twos-complement format (hardware Ex/Ey format) as int
Definition at line 273 of file CrateEnergy.cxx.
|
private |
encode int as 15-bit twos-complement format (hardware Ex/Ey format)
Definition at line 258 of file CrateEnergy.cxx.
| int LVL1::CrateEnergy::et | ( | ) | const |
| unsigned int LVL1::CrateEnergy::etOverflow | ( | ) | const |
return Et overflow bit
Definition at line 228 of file CrateEnergy.cxx.
| int LVL1::CrateEnergy::ex | ( | ) | const |
| unsigned int LVL1::CrateEnergy::exOverflow | ( | ) | const |
| unsigned int LVL1::CrateEnergy::exTC | ( | ) | const |
15 bit twos-complement format
return crate Ex in 15-bit twos-complement format (hardware format)
Definition at line 248 of file CrateEnergy.cxx.
| int LVL1::CrateEnergy::ey | ( | ) | const |
| unsigned int LVL1::CrateEnergy::eyOverflow | ( | ) | const |
return Ey overflow bit
Definition at line 238 of file CrateEnergy.cxx.
| unsigned int LVL1::CrateEnergy::eyTC | ( | ) | const |
return crate Ey in 15-bit twos-complement format (hardware format)
Definition at line 253 of file CrateEnergy.cxx.
| bool LVL1::CrateEnergy::restricted | ( | ) | const |
Full or restricted eta range?
Full or Restricted eta range.
Definition at line 243 of file CrateEnergy.cxx.
|
private |
Definition at line 55 of file CrateEnergy.h.
|
private |
Definition at line 56 of file CrateEnergy.h.
|
private |
Definition at line 57 of file CrateEnergy.h.
|
private |
Definition at line 58 of file CrateEnergy.h.
|
private |
Definition at line 63 of file CrateEnergy.h.
|
staticprivate |
Definition at line 66 of file CrateEnergy.h.
|
private |
Definition at line 59 of file CrateEnergy.h.
|
private |
Definition at line 60 of file CrateEnergy.h.
|
private |
Definition at line 61 of file CrateEnergy.h.
|
private |
Definition at line 62 of file CrateEnergy.h.
|
staticprivate |
Definition at line 65 of file CrateEnergy.h.
|
staticprivate |
Definition at line 64 of file CrateEnergy.h.