ATLAS Offline Software
|
The eTower class is an interface object for eFEX trigger algorithms The purposes are twofold: More...
#include <eTower.h>
Public Member Functions | |
eTower () | |
Constructors. More... | |
eTower (float eta, float phi, int id_modifier, int posneg) | |
constructs a tower and sets the coordinates and identifier More... | |
virtual | ~eTower ()=default |
Destructor. More... | |
void | clearET () |
Clear supercell ET values. More... | |
void | clear_scIDs () |
Clear and resize Identifier value vector. More... | |
void | addET (float et, int cell) |
Add to ET of a specified cell in MeV. More... | |
void | recordMD_ET (float et, int cell) |
Add to ET of a specified cell. More... | |
int | iEta () const |
Get coordinates of tower. More... | |
int | iPhi () const |
Return global phi index. More... | |
float | eta () const |
float | phi () const |
void | setEta (const float thiseta) |
int | id () const |
float | constid () const |
int | getET (unsigned int layer, int cell=0) const |
Get ET of a specified cell in MeV. More... | |
int | getTotalET () const |
Get ET sum of all cells in the eTower in MeV. More... | |
int | getLayerTotalET (unsigned int layer) const |
Get total ET sum of all cells in a given layer in MeV. More... | |
std::vector< int > | getLayerETvec (unsigned int layer) const |
Get vector of ET values for a given layer in MeV. More... | |
const std::vector< int > & | getETs () const |
Get vector of all ET values in MeV. More... | |
const std::vector< unsigned int > & | getETSplits () const |
Get vector of INT which describe whether a slot shared split ET from two different supercells - required information for production of CSV input files. More... | |
float | getET_float (unsigned int layer, int cell=0) const |
Get ET of a specified cell in MeV FLOAT VERSION. More... | |
float | getTotalET_float () const |
Get ET sum of all cells in the eTower in MeV FLOAT VERSION. More... | |
float | getLayerTotalET_float (unsigned int layer) const |
Get total ET sum of all cells in a given layer in MeV FLOAT VERSION. More... | |
std::vector< float > | getLayerETvec_float (unsigned int layer) const |
Get vector of ET values for a given layer in MeV FLOAT VERSION. More... | |
const std::vector< float > & | getETs_float () const |
Get vector of all ET values in MeV FLOAT VERSION. More... | |
void | setET (int cell, float et, int layer, bool ignoreDisable=false) |
void | setSCID (Identifier ID, int cell, float et, int layer, bool doenergysplit) |
Set supercell position ID. More... | |
const std::vector< Identifier > & | getSCIDs () const |
const std::vector< Identifier > & | getSCIDs_split () const |
Identifier | getSCID (int cell) const |
std::vector< Identifier > | getLayerSCIDs (unsigned int layer) const |
void | setPosNeg (int posneg) |
int | getPosNeg () const |
Private Attributes | |
float | m_eta |
Internal data. More... | |
float | m_phi |
std::vector< Identifier > | m_scID |
std::vector< Identifier > | m_scID_split |
std::vector< int > | m_et |
std::vector< float > | m_et_float |
std::vector< unsigned int > | m_etSplits |
int | m_tower_id |
int | m_posneg = 0 |
The eTower class is an interface object for eFEX trigger algorithms The purposes are twofold:
LVL1::eTower::eTower | ( | ) |
LVL1::eTower::eTower | ( | float | eta, |
float | phi, | ||
int | id_modifier, | ||
int | posneg | ||
) |
constructs a tower and sets the coordinates and identifier
Definition at line 36 of file eTower.cxx.
|
virtualdefault |
Destructor.
void LVL1::eTower::addET | ( | float | et, |
int | cell | ||
) |
Add to ET of a specified cell in MeV.
Add ET to a specified cell.
Check cell index in range for layer - should probably throw a warning...
Definition at line 89 of file eTower.cxx.
void LVL1::eTower::clear_scIDs | ( | ) |
void LVL1::eTower::clearET | ( | ) |
Clear supercell ET values.
Clear and resize ET value vector.
Definition at line 47 of file eTower.cxx.
|
inline |
int LVL1::eTower::getET | ( | unsigned int | layer, |
int | cell = 0 |
||
) | const |
Get ET of a specified cell in MeV.
Return ET of specified supercell.
Check cell index in range for layer
Definition at line 172 of file eTower.cxx.
float LVL1::eTower::getET_float | ( | unsigned int | layer, |
int | cell = 0 |
||
) | const |
Get ET of a specified cell in MeV FLOAT VERSION.
Return ET of specified supercell FLOAT VERSION.
Check cell index in range for layer
Definition at line 183 of file eTower.cxx.
|
inline |
|
inline |
|
inline |
std::vector< int > LVL1::eTower::getLayerETvec | ( | unsigned int | layer | ) | const |
Get vector of ET values for a given layer in MeV.
Return supercell ET values for specified layer.
Create empty vector of data
Check cell index in range for layer
Fill output vector
Definition at line 217 of file eTower.cxx.
std::vector< float > LVL1::eTower::getLayerETvec_float | ( | unsigned int | layer | ) | const |
Get vector of ET values for a given layer in MeV FLOAT VERSION.
Return supercell ET values for specified layer FLOAT VERSION.
Create empty vector of data
Check cell index in range for layer
Fill output vector
Definition at line 233 of file eTower.cxx.
std::vector< Identifier > LVL1::eTower::getLayerSCIDs | ( | unsigned int | layer | ) | const |
Definition at line 296 of file eTower.cxx.
int LVL1::eTower::getLayerTotalET | ( | unsigned int | layer | ) | const |
Get total ET sum of all cells in a given layer in MeV.
Return supercell ET values for specified layer.
Definition at line 249 of file eTower.cxx.
float LVL1::eTower::getLayerTotalET_float | ( | unsigned int | layer | ) | const |
Get total ET sum of all cells in a given layer in MeV FLOAT VERSION.
Return supercell ET values for specified layer FLOAT VERSION.
Definition at line 273 of file eTower.cxx.
|
inline |
|
inline |
|
inline |
|
inline |
int LVL1::eTower::getTotalET | ( | ) | const |
Get ET sum of all cells in the eTower in MeV.
Return ET of all supercells together.
Definition at line 194 of file eTower.cxx.
float LVL1::eTower::getTotalET_float | ( | ) | const |
Get ET sum of all cells in the eTower in MeV FLOAT VERSION.
Return ET of all supercells together FLOAT VERSION.
Definition at line 204 of file eTower.cxx.
int LVL1::eTower::iEta | ( | ) | const |
Get coordinates of tower.
Return global eta index.
Should be derived from tower ID, should be corrected in the future. Need to also think what index range should be (thinking ahead to Run2)
Definition at line 159 of file eTower.cxx.
int LVL1::eTower::iPhi | ( | ) | const |
Return global phi index.
Should be derived from tower ID, should be corrected in the future. Decision here is whether phi is signed or not
Definition at line 167 of file eTower.cxx.
|
inline |
void LVL1::eTower::recordMD_ET | ( | float | et, |
int | cell | ||
) |
Add to ET of a specified cell.
void LVL1::eTower::setET | ( | int | cell, |
float | et, | ||
int | layer, | ||
bool | ignoreDisable = false |
||
) |
Check cell index in range for layer
Definition at line 99 of file eTower.cxx.
|
inline |
void LVL1::eTower::setPosNeg | ( | int | posneg | ) |
Definition at line 80 of file eTower.cxx.
void LVL1::eTower::setSCID | ( | Identifier | ID, |
int | cell, | ||
float | et, | ||
int | layer, | ||
bool | doenergysplit | ||
) |
Set supercell position ID.
Set supercell position ID and ET.
Check cell index in range for layer
Definition at line 110 of file eTower.cxx.
|
private |
|
private |