ATLAS Offline Software
Loading...
Searching...
No Matches
CoordToHardware.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4/***************************************************************************
5 CoordToHardware.h - description
6 -------------------
7 begin : Fri Apr 19 2002
8 email : moyse@ph.qmw.ac.uk
9 ***************************************************************************/
10
11
12#ifndef COORDTOHARDWARE_H
13#define COORDTOHARDWARE_H
14
15#ifndef TRIGGERSPACE
16// running in Athena
19#else
20// running in TRIGGERSPACE
21#include "Coordinate.h"
22#include "JetEnergyModuleKey.h"
23#endif
24
25
26
30namespace LVL1 {
31
32
38public:
42 unsigned int jepCrate(const Coordinate& Coord);
45 unsigned int cpCrate(const Coordinate& coord);
47 unsigned int cpRoIROD(const Coordinate& coord);
53 unsigned int jepModule(const Coordinate& coord);
56 unsigned int cpModule(const Coordinate& coord);
58 unsigned int cpModuleFPGA(const Coordinate& coord);
60 unsigned int cpModuleLocalRoI(const Coordinate& coord);
67 unsigned int cpCoordinateWord(const Coordinate& coord);
72 unsigned int jepCoordinateWord(const Coordinate& coord);
76 unsigned int jepLocalCoordinate(const Coordinate& coord);
78 unsigned int cpCrateOverlap(const Coordinate& coord);
80 unsigned int cpModuleOverlap(const Coordinate& coord);
82 unsigned int jepCrateOverlap(const Coordinate& coord);
84 unsigned int jepModuleOverlap(const Coordinate& coord);
85public: // attributes
86 enum SubDet_ID {PPr=0x71, CP=0x72, JEP=0x73};
87
88private: // Private methods
90 void fillRoILocalMap();
96 unsigned int phiQuadrant(const double phi) const;
98 bool cpCoordIsValid(const Coordinate& coord) const;
100 double cpPhiOverlap(const Coordinate& coord) const;
102 double jepPhiOverlap(const Coordinate& coord) const;
103
104
105private: //attribs
115 //double m_jemEtaWidth ;
117 unsigned int m_roiLocalMap[2][4];
119 static const unsigned int m_error=999;
121
122};
123
124#endif
125}//end of ns
126
Scalar phi() const
phi method
double coord
Type of coordination system.
Coordinate policies.
unsigned int cpModuleOverlap(const Coordinate &coord)
return ID of CP module for overlap coord
double m_cpmEtaWidth
eta width of CP modules (CPMs)
void fillRoILocalMap()
No descriptions.
unsigned int jepModule(const Coordinate &coord)
returns ID of JEP module (i.e.
double m_cpEtaMax
contains the maximum permissable eta for CP system.
unsigned int phiQuadrant(const double phi) const
returns the quadrant number associated with the phi coordinate,
double jepPhiOverlap(const Coordinate &coord) const
returns a phi in core area for overlap jet elements
unsigned int cpRoIROD(const Coordinate &coord)
returns Module ID of CP RoI ROD
unsigned int jepCoordinateWord(const Coordinate &coord)
return JEP (Jet Energy Processing) hardware coordinate word for this coordinate.
unsigned int jepLocalCoordinate(const Coordinate &coord)
returns the roi's local coord, in the form of a 5b word.
unsigned int cpModuleFPGA(const Coordinate &coord)
returns ID [0-7] of the CP FPGA.
unsigned int cpModule(const Coordinate &coord)
return ID of CP module.
unsigned int cpModuleLocalRoI(const Coordinate &coord)
returns local RoI coordinate within FPGA
double cpPhiOverlap(const Coordinate &coord) const
returns a phi in core area for overlap CPM towers
bool cpCoordIsValid(const Coordinate &coord) const
returns false if Coord is outside permitted region
unsigned int jepCrate(const Coordinate &Coord)
returns ID of JEP Crate that covers this coordinate
double m_cpFPGAPhiWidth
phi width of CP FPGAs
unsigned int cpCoordinateWord(const Coordinate &coord)
return CP (Cluster Processing) hardware coordinate word for this coordinate.
unsigned int m_roiLocalMap[2][4]
width of JEMs
double m_cpmEtaMax
extreme value of eta, covered by CPMs.
unsigned int cpCrateOverlap(const Coordinate &coord)
returns crate ID covering that overlap coord.
unsigned int jepCrateOverlap(const Coordinate &coord)
returns ID of JEP Crate that covers this overlap coordinate
static const unsigned int m_error
returned value in the case of an invalid Coordinate error
unsigned int cpCrate(const Coordinate &coord)
returns crate ID covering that coord.
unsigned int jepModuleOverlap(const Coordinate &coord)
returns ID of JEP module (i.e.
Select isolated Photons, Electrons and Muons.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...