ATLAS Offline Software
|
The ClusterProcessorModuleKey object provides the key for each trigger tower depending on its eta-phi coords. More...
#include <ClusterProcessorModuleKey.h>
Public Member Functions | |
ClusterProcessorModuleKey () | |
constructs a ClusterProcessorModuleKey object More... | |
virtual | ~ClusterProcessorModuleKey () |
unsigned int | cpmKey (unsigned int crate, unsigned int module) |
calculates key from crate and module index More... | |
double | dPhi (const Coordinate &coord) const |
height More... | |
double | dEta (const Coordinate &coord) const |
width More... | |
unsigned int | cpm (const Coordinate &coord) const |
returns CPM number within a crate for a TriggerTower or RoI coordinate More... | |
virtual double | eta () const |
returns the centre of the TT at eta_coord: More... | |
virtual double | phi () const |
returns phi coordinate of centre of relevant trigger tower. More... | |
unsigned int | key (double phi, double eta) |
calculates a map key from passed phi, eta coordinates More... | |
unsigned int | key (const Coordinate &coord) |
returns the key of the passed Coordinate More... | |
Coordinate | coord () const |
return central coords of current key value. More... | |
Protected Member Functions | |
ICoordinate * | convertCoordsToIntegers (double phi, double eta) |
converts the coordinates and corrects for overflows etc. More... | |
virtual int | sign (int temp) const |
returns -1 if temp is -ve and +1 if it is +ve. More... | |
virtual int | sign (double temp) const |
returns -1 if temp is -ve and +1 if it is +ve. More... | |
int | round (double a) const |
rounds number to nearest whole number More... | |
int | sharpRound (double a) const |
rounds number as follows (-1.0 to 0.0) -> -1, (0.0 to 1.0) -> 0, (1.0 to 2.0)->1 etc. More... | |
int | sharpRound2 (int a, int b) const |
divides a/b and returns a number as follows (where +b means +ve b): if 0<a<+b, then n=1, if +b<a<+2b, n=2, if -b<a<0, n=-1, if -2b<a<-b, n=-2 More... | |
void | setupThisKeyValues () |
Protected Attributes | |
int | m_iphi |
integer phi coord More... | |
int | m_ieta |
integer eta coord More... | |
double | m_eta |
eta coordinate of key More... | |
double | m_phi |
phi coordinate of key More... | |
int | m_phiBin |
phi bin More... | |
int | m_etaBin |
eta bin More... | |
double | m_centralPhi |
this is the coordinate of the centre of the relevant trigger tower. More... | |
double | m_centralEta |
this is the coordinate of the centre of the relevant trigger tower. More... | |
bool | m_debug |
turns DEBUG code on and off More... | |
Private Member Functions | |
BinAndCoord * | calculateTriggerBin (ICoordinate *iCoord) |
converts integer phi, eta coordinates to phi, eta trigger bins, and central coords More... | |
void | setBins (ICoordinate *iCoord, unsigned int &phiBin, int &etaBin) |
sets the eta and phi bins More... | |
unsigned int | phiQuadrant (const double phi) const |
returns the quadrant number associated with the phi coordinate, 0 - 90 = 0 90 - 180 = 1 180-270 = 2 270-360 = 3 More... | |
Private Attributes | |
bool | m_debugModuleKey |
set to true to turn debugging info on More... | |
The ClusterProcessorModuleKey object provides the key for each trigger tower depending on its eta-phi coords.
The key is an integer number that uniquely identifies each tower, and is needed by the STL map container: the map holds trigger towers and we retrieve them using their keys.
Definition at line 49 of file ClusterProcessorModuleKey.h.
LVL1::ClusterProcessorModuleKey::ClusterProcessorModuleKey | ( | ) |
constructs a ClusterProcessorModuleKey object
Definition at line 39 of file ClusterProcessorModuleKey.cxx.
|
virtual |
Definition at line 43 of file ClusterProcessorModuleKey.cxx.
|
privatevirtual |
converts integer phi, eta coordinates to phi, eta trigger bins, and central coords
converts integer phi, eta coordinates to phi, eta trigger bins.
Returns coordinates of centre of JEs
Implements LVL1::KeyUtilities.
Definition at line 87 of file ClusterProcessorModuleKey.cxx.
|
protectedinherited |
converts the coordinates and corrects for overflows etc.
For instance, if phi is negative this routine converts to the equivalent positive position.
For instance, if phi is negative this routine converts to the equivalent positive position. *todo tidy up a bit.
Definition at line 110 of file KeyUtilities.cxx.
|
inherited |
return central coords of current key value.
Definition at line 199 of file KeyUtilities.cxx.
unsigned int LVL1::ClusterProcessorModuleKey::cpm | ( | const Coordinate & | coord | ) | const |
returns CPM number within a crate for a TriggerTower or RoI coordinate
Returns CPM number for TT coordinate.
TT and RoI coordinates are offset by 0.5*tower width. Shift by 0.25*tower width to allow common code without rounding errors
Definition at line 70 of file ClusterProcessorModuleKey.cxx.
unsigned int LVL1::ClusterProcessorModuleKey::cpmKey | ( | unsigned int | crate, |
unsigned int | module | ||
) |
calculates key from crate and module index
returns trigger tower key of passed crate+module
Definition at line 47 of file ClusterProcessorModuleKey.cxx.
|
virtual |
width
return width of JE
Implements LVL1::KeyUtilities.
Definition at line 58 of file ClusterProcessorModuleKey.cxx.
|
virtual |
height
return height of CPM
Implements LVL1::KeyUtilities.
Definition at line 53 of file ClusterProcessorModuleKey.cxx.
|
virtualinherited |
returns the centre of the TT at eta_coord:
returns the eta coord of the centre of the relevent trigger tower
Definition at line 150 of file KeyUtilities.cxx.
|
inherited |
returns the key of the passed Coordinate
returns trigger tower key of passed Coordinate
Definition at line 101 of file KeyUtilities.cxx.
|
inherited |
calculates a map key from passed phi, eta coordinates
returns key
calculates a map key from passed phi, eta coordinates
Definition at line 82 of file KeyUtilities.cxx.
|
virtualinherited |
returns phi coordinate of centre of relevant trigger tower.
returns phi coordinate of the centre of the relevent trigger tower.
Definition at line 159 of file KeyUtilities.cxx.
|
private |
returns the quadrant number associated with the phi coordinate, 0 - 90 = 0 90 - 180 = 1 180-270 = 2 270-360 = 3
Definition at line 119 of file ClusterProcessorModuleKey.cxx.
|
protectedinherited |
|
private |
|
protectedinherited |
|
protectedinherited |
rounds number as follows (-1.0 to 0.0) -> -1, (0.0 to 1.0) -> 0, (1.0 to 2.0)->1 etc.
Definition at line 190 of file KeyUtilities.cxx.
|
protectedinherited |
divides a/b and returns a number as follows (where +b means +ve b): if 0<a<+b, then n=1, if +b<a<+2b, n=2, if -b<a<0, n=-1, if -2b<a<-b, n=-2
Definition at line 194 of file KeyUtilities.cxx.
|
protectedvirtualinherited |
returns -1 if temp is -ve and +1 if it is +ve.
returns 0 if temp =0
Definition at line 169 of file KeyUtilities.cxx.
|
protectedvirtualinherited |
returns -1 if temp is -ve and +1 if it is +ve.
returns 0 if temp =0
Definition at line 164 of file KeyUtilities.cxx.
|
protectedinherited |
this is the coordinate of the centre of the relevant trigger tower.
Definition at line 122 of file KeyUtilities.h.
|
protectedinherited |
this is the coordinate of the centre of the relevant trigger tower.
Definition at line 119 of file KeyUtilities.h.
|
protectedinherited |
turns DEBUG code on and off
Definition at line 124 of file KeyUtilities.h.
|
private |
set to true to turn debugging info on
Definition at line 84 of file ClusterProcessorModuleKey.h.
|
protectedinherited |
eta coordinate of key
Definition at line 110 of file KeyUtilities.h.
|
protectedinherited |
eta bin
Definition at line 116 of file KeyUtilities.h.
|
protectedinherited |
integer eta coord
Definition at line 108 of file KeyUtilities.h.
|
protectedinherited |
integer phi coord
Definition at line 106 of file KeyUtilities.h.
|
protectedinherited |
phi coordinate of key
Definition at line 112 of file KeyUtilities.h.
|
protectedinherited |
phi bin
Definition at line 114 of file KeyUtilities.h.