ATLAS Offline Software
|
returns the trigger hardware components associated with a given Coordinate More...
#include <CoordToHardware.h>
Public Types | |
enum | SubDet_ID { PPr =0x71, CP =0x72, JEP =0x73 } |
Public Member Functions | |
CoordToHardware () | |
~CoordToHardware () | |
unsigned int | jepCrate (const Coordinate &Coord) |
returns ID of JEP Crate that covers this coordinate More... | |
unsigned int | cpCrate (const Coordinate &coord) |
returns crate ID covering that coord. More... | |
unsigned int | cpRoIROD (const Coordinate &coord) |
returns Module ID of CP RoI ROD More... | |
unsigned int | jepModule (const Coordinate &coord) |
returns ID of JEP module (i.e. More... | |
unsigned int | cpModule (const Coordinate &coord) |
return ID of CP module. More... | |
unsigned int | cpModuleFPGA (const Coordinate &coord) |
returns ID [0-7] of the CP FPGA. More... | |
unsigned int | cpModuleLocalRoI (const Coordinate &coord) |
returns local RoI coordinate within FPGA More... | |
unsigned int | cpCoordinateWord (const Coordinate &coord) |
return CP (Cluster Processing) hardware coordinate word for this coordinate. More... | |
unsigned int | jepCoordinateWord (const Coordinate &coord) |
return JEP (Jet Energy Processing) hardware coordinate word for this coordinate. More... | |
unsigned int | jepLocalCoordinate (const Coordinate &coord) |
returns the roi's local coord, in the form of a 5b word. More... | |
unsigned int | cpCrateOverlap (const Coordinate &coord) |
returns crate ID covering that overlap coord. More... | |
unsigned int | cpModuleOverlap (const Coordinate &coord) |
return ID of CP module for overlap coord More... | |
unsigned int | jepCrateOverlap (const Coordinate &coord) |
returns ID of JEP Crate that covers this overlap coordinate More... | |
unsigned int | jepModuleOverlap (const Coordinate &coord) |
returns ID of JEP module (i.e. More... | |
Private Member Functions | |
void | fillRoILocalMap () |
No descriptions. More... | |
unsigned int | phiQuadrant (const double phi) const |
returns the quadrant number associated with the phi coordinate, More... | |
bool | cpCoordIsValid (const Coordinate &coord) const |
returns false if Coord is outside permitted region More... | |
double | cpPhiOverlap (const Coordinate &coord) const |
returns a phi in core area for overlap CPM towers More... | |
double | jepPhiOverlap (const Coordinate &coord) const |
returns a phi in core area for overlap jet elements More... | |
Private Attributes | |
double | m_cpmEtaWidth |
eta width of CP modules (CPMs) More... | |
double | m_cpmEtaMax |
extreme value of eta, covered by CPMs. More... | |
double | m_cpFPGAPhiWidth |
phi width of CP FPGAs More... | |
double | m_cpEtaMax |
contains the maximum permissable eta for CP system. More... | |
unsigned int | m_roiLocalMap [2][4] |
width of JEMs More... | |
bool | m_debug |
Static Private Attributes | |
static const unsigned int | m_error =999 |
returned value in the case of an invalid Coordinate error More... | |
returns the trigger hardware components associated with a given Coordinate
Definition at line 42 of file CoordToHardware.h.
LVL1::CoordToHardware::CoordToHardware | ( | ) |
Definition at line 20 of file CoordToHardware.cxx.
LVL1::CoordToHardware::~CoordToHardware | ( | ) |
Definition at line 27 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::cpCoordinateWord | ( | const Coordinate & | coord | ) |
return CP (Cluster Processing) hardware coordinate word for this coordinate.
This word is formed as follows: -3 bits: RoI local coordinates with FPGA [0-7] -3 bits: CP FPGA position within CPM (Cluster Processing module) [0-7] -4 bits: CPM position within crate [1-14] -2 bits: CP crate number [0-3]
This word is formed as follows: -3 bits: RoI local coordinates within FPGA [0-7] -3 bits: CP FPGA position within CPM (Cluster Processing module) [0-7] -4 bits: CPM position within crate [1-14] -2 bits: CP crate number [0-3]
Definition at line 174 of file CoordToHardware.cxx.
|
private |
returns false if Coord is outside permitted region
Definition at line 128 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::cpCrate | ( | const Coordinate & | coord | ) |
returns crate ID covering that coord.
Definition at line 39 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::cpCrateOverlap | ( | const Coordinate & | coord | ) |
returns crate ID covering that overlap coord.
Definition at line 205 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::cpModule | ( | const Coordinate & | coord | ) |
return ID of CP module.
return ID of CP module
According to the LVL1-LVL2 interface document: CPMs are numbered 1-14, with CPM1 covering eta=-2.6 to -2.2 and so on. This is implemented here.
Definition at line 52 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::cpModuleFPGA | ( | const Coordinate & | coord | ) |
returns ID [0-7] of the CP FPGA.
The FPGAs cover a region of 0.2 in phi and 0.4 in eta. FPGA 0 starts at phi=0 within its CPM.
Definition at line 74 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::cpModuleLocalRoI | ( | const Coordinate & | coord | ) |
unsigned int LVL1::CoordToHardware::cpModuleOverlap | ( | const Coordinate & | coord | ) |
return ID of CP module for overlap coord
Definition at line 213 of file CoordToHardware.cxx.
|
private |
returns a phi in core area for overlap CPM towers
Definition at line 237 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::cpRoIROD | ( | const Coordinate & | coord | ) |
returns Module ID of CP RoI ROD
Definition at line 47 of file CoordToHardware.cxx.
|
private |
No descriptions.
fill m_roiLocalMap so that it looks like this:
2 3 6 7 0 1 4 5
(as usual, phi increases up and eta increases right)
Definition at line 91 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::jepCoordinateWord | ( | const Coordinate & | coord | ) |
return JEP (Jet Energy Processing) hardware coordinate word for this coordinate.
This word is formed as follows: -4 bits: RoI local coordinates with FPGA [0-15] -4 bits: JEM number [0-15] -2 bits: JEP crate number [0-2]
This word is formed as follows: -5 bits: RoI local coordinates within FPGA [0-31] -4 bits: JEM number [0-15] -1 bits: JEP crate number [0-1]
Definition at line 140 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::jepCrate | ( | const Coordinate & | Coord | ) |
returns ID of JEP Crate that covers this coordinate
returns ID of JEP Crate that covers this coordinate.
(quadrants 0+2, 1+3)
Definition at line 32 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::jepCrateOverlap | ( | const Coordinate & | coord | ) |
returns ID of JEP Crate that covers this overlap coordinate
Definition at line 221 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::jepLocalCoordinate | ( | const Coordinate & | coord | ) |
returns the roi's local coord, in the form of a 5b word.
This is based on fig 16 of JEM spec.
Definition at line 195 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::jepModule | ( | const Coordinate & | coord | ) |
returns ID of JEP module (i.e.
JEM) There are 16 JEMS per crate, and 8 JEMS per quadrant. The central 6 JEMS cover the barrel, JEMs 0,7,8 & 15 extend over the FCAL as well. (each crate contains JEMS for opposite quadrants, so one crate might have JEMs 0-7 in quadrant 0 and JEMs 8-15 in quadrant 2)
JEM) There are 16 JEMS per crate, and 8 JEMS per quadrant. The central 6 JEMS cover the barrel, JEMs 0,7,8 & 15 extend over the FCAL as well. (each crate contains JEMS for opposite quadrants, so one crate might have JEMs 0-7 in quadrant 0 and JEMs 8-15 in quadrant 2)
Definition at line 67 of file CoordToHardware.cxx.
unsigned int LVL1::CoordToHardware::jepModuleOverlap | ( | const Coordinate & | coord | ) |
returns ID of JEP module (i.e.
JEM) for overlap coord
Definition at line 229 of file CoordToHardware.cxx.
|
private |
returns a phi in core area for overlap jet elements
Definition at line 255 of file CoordToHardware.cxx.
|
private |
returns the quadrant number associated with the phi coordinate,
returns the quadrant number associated with the phi coordinate, 0 - 90 = 0 90 - 180 = 1 180-270 = 2 270-360 = 3
Definition at line 164 of file CoordToHardware.cxx.
|
private |
contains the maximum permissable eta for CP system.
Expected to be 2.5
Definition at line 123 of file CoordToHardware.h.
|
private |
phi width of CP FPGAs
Definition at line 121 of file CoordToHardware.h.
|
private |
extreme value of eta, covered by CPMs.
This is expected to be 2.8, and it is assumed that the range is symmetric
Definition at line 119 of file CoordToHardware.h.
|
private |
eta width of CP modules (CPMs)
Definition at line 117 of file CoordToHardware.h.
|
private |
Definition at line 130 of file CoordToHardware.h.
|
staticprivate |
returned value in the case of an invalid Coordinate error
Definition at line 129 of file CoordToHardware.h.
|
private |
width of JEMs
contains RoI local coordinate mapping (phi,eta)
Definition at line 127 of file CoordToHardware.h.