|
ATLAS Offline Software
|
Go to the documentation of this file.
82 if (
m_debug) std::cout <<
"KU : key: got bandc "<<std::endl;
91 if (
m_debug) std::cout <<
"KU : key: returning - "<<temp<<std::endl;
92 return static_cast<unsigned int>(temp);
107 double phiBinWidth=((2*
M_PI)/64.0);
110 if (
m_debug) std::cout <<
"KU : (phi, eta) ("<<
phi<<
","<<
eta<<
")"<<std::endl;
116 if (iphi<0) iphi = 64+iphi;
126 double temp_abs=
eta*temp_sign;
128 double temp_double=(temp_abs*10.0+1.0)*temp_sign;
129 if (
m_debug) std::cout <<
"KU : temp_abs, temp_sign, temp_double : "<<temp_abs<<
","<<temp_sign<<
","<<temp_double<<std::endl;
136 ieta=
static_cast<int>(temp_double);
137 if (
m_debug) std::cout <<
"KU : (iphi, ieta) ("<<iphi<<
","<<ieta<<
")"<<std::endl;
160 return ((temp >= 0) ? 1 : -1);
165 return ((temp >= 0.0) ? 1 : -1);
181 return static_cast<int>(
a<0.0?ceil(
a-0.5):
a>0.0?floor(
a+0.5):0.0);
186 return static_cast<int>(
a<0.0?(
a-1.0):
a>0.0?(
a):0.0);
190 int temp=(abs(
a)-1)/
b+1;
virtual int sign(int temp) const
returns -1 if temp is -ve and +1 if it is +ve.
virtual double phi() const
returns phi coordinate of centre of relevant trigger tower.
double m_phi
phi coordinate of key
double phi() const
return phi
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.
unsigned int key(double phi, double eta)
calculates a map key from passed phi, eta coordinates
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
bool m_debug
turns DEBUG code on and off
KeyUtilities()
the constructor is protected so a user can never make a KeyUtilities object
Used by Key Classes, returns and integer coorginate for the bin Eta-Phi.
virtual double eta() const
returns the centre of the TT at eta_coord:
Coordinate coord() const
return central coords of current key value.
Coordinate class declaration.
Used to pass data between the methods of the Key Classes: Returns the Eta and Phi bins,...
void setupThisKeyValues()
int round(double a) const
rounds number to nearest whole number
double m_centralPhi
this is the coordinate of the centre of the relevant trigger tower.
double m_eta
eta coordinate of key
ICoordinate * convertCoordsToIntegers(double phi, double eta)
converts the coordinates and corrects for overflows etc.
double eta() const
return eta
const Coordinate * coords() const
double m_centralEta
this is the coordinate of the centre of the relevant trigger tower.
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,...
virtual BinAndCoord * calculateTriggerBin(ICoordinate *iCoord)=0
converts integer phi, eta coordinates to phi, eta trigger bins.