#include <TriggerTower_v1.h>
Public Member Functions | |
const std::vector< int > & | emLUT () const |
get EM energy for all time slices | |
void | setEmLUT (const std::vector< int > &) |
set EM energy for all time slices | |
const std::vector< int > & | hadLUT () const |
get HAD energy for all time slices | |
void | setHadLUT (const std::vector< int > &) |
set HAD energy for all time slices | |
const std::vector< int > & | emADC () const |
get EM ADC for all time slices | |
void | setEmADC (const std::vector< int > &) |
set EM ADC for all time slices | |
const std::vector< int > & | hadADC () const |
get HAD ADC for all time slices | |
void | setHadADC (const std::vector< int > &) |
set HAD ADC for all time slices | |
const std::vector< int > & | emBCIDvec () const |
get EM BCID for all time slices | |
void | setEmBCIDvec (const std::vector< int > &) |
set EM BCID for all time slices | |
const std::vector< int > & | hadBCIDvec () const |
get HAD BCID for all time slices | |
void | setHadBCIDvec (const std::vector< int > &) |
set HAD BCID for all time slices | |
const std::vector< int > & | emBCIDext () const |
get EM extBCID for all time slices | |
void | setEmBCIDext (const std::vector< int > &) |
set EM extBCID for all time slices | |
const std::vector< int > & | hadBCIDext () const |
get HAD extBCID for all time slices | |
void | setHadBCIDext (const std::vector< int > &) |
set HAD extBCID for all time slices | |
float | phi () const |
get phi (note that for L1Calo phi runs from 0 to 2pi) | |
void | setPhi (float) |
set phi | |
float | eta () const |
get eta | |
void | setEta (float) |
set eta | |
unsigned int | key () const |
get key of TT | |
void | setKey (unsigned int) |
set key of TT | |
int | emError () const |
get EM error | |
void | setEmError (int) |
set EM error | |
int | hadError () const |
get HAD error | |
void | setHadError (int) |
set HAD error | |
int | emPeak () const |
get EM peak | |
void | setEmPeak (int) |
set EM peak | |
int | emADCPeak () const |
get EM ADC peak | |
void | setEmADCPeak (int) |
set EM ADC peak | |
int | hadPeak () const |
get HAD peak | |
void | setHadPeak (int) |
set HAD peak | |
int | hadADCPeak () const |
get HAD ADC peak | |
void | setHadADCPeak (int) |
set HAD ADC peak | |
void | addEM (const std::vector< int > &digits, const std::vector< int > &et, const std::vector< int > &digits_bcid, const std::vector< int > &bcid, int error, int peak, int adc_peak) |
Fill EM towers with digits, calibrated ET vectors and status flags. | |
void | addHad (const std::vector< int > &digits, const std::vector< int > &et, const std::vector< int > &digits_bcid, const std::vector< int > &bcid, int error, int peak, int adc_peak) |
Fill HAD towers with digits, calibrated ET vectors and status flags. | |
void | setCoord (double eta, double phi) |
Specify the location of tower. Internally calls setEta();setPhi();. | |
int | emEnergy () const |
Final EM energy value used by the algorithms. | |
int | hadEnergy () const |
Final HAD energy value used by the algorithms. | |
int | emBCID () const |
get EM BCID at peak | |
int | hadBCID () const |
get HAD BCID at peak | |
bool | isEMSaturated () const |
Is EM saturated? | |
bool | isHadSaturated () const |
Is HAD saturated? |
Description of TriggerTower_v1
Trigger towers are the inputs to all other parts of the calorimeter trigger. They are formed by analogue summation of cells (represented in simulation by LArTTL1 and TileTTL1 objects). The L1Calo PreProcessor digitizes these, performs Bunch-Crossing IDentification, final calibration and reduction to 8 bit words.
The TriggerTower class represents the output of the PreProcessor. Each TriggerTower object actually contains information from a pair of trigger towers, one EM and one Hadronic, sharing the same eta, phi coordinates. This is convenient for algorithm emulation, though it does not represent the readout arrangement.
For each tower, the TriggerTower contains the final ET (LUT output) as well as a vector of ADC data (at 25ns intervals) from which it was formed, plus error flags and raw BCID output. As the PreProcessor readout can read variable numbers of slices of all of these data, the internal storage is in std::vectors, and methods exist to return all slices as well as just the data corresponding to the triggered crossing.