ATLAS Offline Software
Loading...
Searching...
No Matches
JetEnergyModuleKey.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4/***************************************************************************
5 JetEnergyModuleKey.h - description
6 -------------------
7 begin : Monday August 20 2001
8 email : e.moyse@qmw.ac.uk
9 ***************************************************************************/
10
11
12#ifndef JETENERGYMODULEKEY_H
13#define JETENERGYMODULEKEY_H
14
15#include <iostream>
16#include <vector>
17
18// running in Athena
24
25namespace LVL1 {
26
36
37public:
44
46 virtual ~JetEnergyModuleKey();
47
48
50 unsigned int jemKey(const xAOD::JetElement* jetElement);
52 unsigned int jemKey(unsigned int crate, unsigned int module);
54 std::vector<unsigned int> jeKeys(unsigned int crate, unsigned int module);
56 std::vector<Coordinate> jeCoords(unsigned int crate, unsigned int module);
59 unsigned int row(const Coordinate& coord) const;
62 unsigned int row(const xAOD::JetElement* jetElement) const;
64 double rowPhiCoord(unsigned int row, const Coordinate& jemCoord);
66 double dPhi(const Coordinate& coord) const;
68 double dEta(const Coordinate& coord) const;
70 JEMRegion region(const Coordinate& coord) const;
72 unsigned int col(const Coordinate& coord) ;
78 unsigned int jem(const Coordinate & coord) const;
79
80private: // Private methods
85 void setBins(ICoordinate* iCoord,unsigned int& phiBin, int& etaBin);
87 unsigned int midJEMEtaCol(const Coordinate& coord) const;
89 unsigned int leftEndJEMEtaCol(const Coordinate& coord) const;
91 unsigned int rightEndJEMEtaCol(const Coordinate& coord) const;
97 unsigned int phiQuadrant(const double phi) const ;
98private:
101};
102}
103
104#endif
Scalar phi() const
phi method
double coord
Type of coordination system.
Used to pass data between the methods of the Key Classes: Returns the Eta and Phi bins,...
Definition BinAndCoord.h:35
Used by Key Classes, returns and integer coorginate for the bin Eta-Phi.
Definition ICoordinate.h:26
unsigned int col(const Coordinate &coord)
return row of passed coordinate
BinAndCoord * calculateTriggerBin(ICoordinate *iCoord)
converts integer phi, eta coordinates to phi, eta trigger bins, and central coords
double dPhi(const Coordinate &coord) const
height
void setBins(ICoordinate *iCoord, unsigned int &phiBin, int &etaBin)
sets the eta and phi bins
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 2...
std::vector< unsigned int > jeKeys(unsigned int crate, unsigned int module)
calculates keys of all JetElements in given crate and module
unsigned int jemKey(const xAOD::JetElement *jetElement)
returns the key of the passed Coordinate
unsigned int midJEMEtaCol(const Coordinate &coord) const
No descriptions.
unsigned int jem(const Coordinate &coord) const
returns ID of JEP module (i.e.
unsigned int leftEndJEMEtaCol(const Coordinate &coord) const
returns eta row of JEMs 0, or 8
JetEnergyModuleKey()
constructs a JetEnergyModuleKey object
std::vector< Coordinate > jeCoords(unsigned int crate, unsigned int module)
returns coordinates of all JetElements in given crate and module
bool m_debugModuleKey
set to true to turn debugging info on
unsigned int row(const Coordinate &coord) const
returns the phi row of a coord within the JEM that contains it.
double rowPhiCoord(unsigned int row, const Coordinate &jemCoord)
returns the phi coord of the row of the JEM at the coordinates passed
unsigned int rightEndJEMEtaCol(const Coordinate &coord) const
returns eta row of JEMs 7 or 15
double dEta(const Coordinate &coord) const
width
JEMRegion region(const Coordinate &coord) const
region
KeyUtilities()
the constructor is protected so a user can never make a KeyUtilities object
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
JetElement_v2 JetElement
Define the latest version of the JetElement class.