13#ifndef L1TRIGGERTOWERTOOLRUN3_H
14#define L1TRIGGERTOWERTOOLRUN3_H
17#include "GaudiKernel/IIncidentListener.h"
18#include "GaudiKernel/ToolHandle.h"
19#include "GaudiKernel/ServiceHandle.h"
68 virtual StatusCode
finalize()
override;
70 virtual void handle(
const Incident&)
override;
73 virtual void process(
const std::vector<int> &digits,
74 double eta,
double phi,
int layer,
75 std::vector<int> &
et, std::vector<int> &bcidResults,
76 std::vector<int> &bcidDecisions,
bool useJepLut =
true)
override;
79 std::vector<int> &
et, std::vector<int> &bcidResults,
80 std::vector<int> &bcidDecisions,
bool useJepLut =
true)
override;
82 virtual void simulateChannel(
const xAOD::TriggerTower& tt, std::vector<int>& outCpLut,std::vector<int>& outJepLut, std::vector<int>& bcidResults, std::vector<int>& bcidDecisions)
const override;
84 virtual void pedestalCorrection(std::vector<int>& firInOut,
int firPed,
int iElement,
int layer,
85 int bcid,
float mu, std::vector<int_least16_t>& correctionOut)
override;
86 virtual void fir(
const std::vector<int> &digits,
const L1CaloCoolChannelId& channelId, std::vector<int> &output)
const override;
87 virtual void fir(
const std::vector<int> &digits,
const std::vector<int> &firCoeffs, std::vector<int> &output)
const override;
89 virtual void dropBits(
const std::vector<int> &
fir,
unsigned int first, std::vector<int> &output)
const override;
91 virtual void etRange(
const std::vector<int> &
et,
int energyLow,
int energyHigh, std::vector<int> &output)
const override;
93 virtual void peakBcid(
const std::vector<int> &
fir,
unsigned int strategy, std::vector<int> &output)
const override;
94 virtual void satBcid(
const std::vector<int> &digits,
const L1CaloCoolChannelId& channelId, std::vector<int> &output)
const override;
95 virtual void satBcid(
const std::vector<int> &digits,
int satLow,
int satHigh,
int satLevel, std::vector<int> &output)
const override;
96 virtual void bcid(
const std::vector<int> &
fir,
const std::vector<int> &digits,
const L1CaloCoolChannelId& channelId, std::vector<int> &output)
const override;
97 virtual void bcid(
const std::vector<int> &
fir,
const std::vector<int> &digits,
unsigned int strategy,
int satLow,
int satHigh,
int satLevel, std::vector<int> &output)
const override;
98 virtual void bcid(
const std::vector<int> &
fir,
const std::vector<int> &lutInput,
const std::vector<int> &digits,
int energyLow,
int energyHigh,
int decisionSource, std::vector<unsigned int> &decisionConditions,
unsigned int strategy,
int satLow,
int satHigh,
int satLevel, std::vector<int> &
result, std::vector<int> &decision)
const override;
100 virtual void bcidDecision(
const std::vector<int> &bcidResults,
const std::vector<int> &range, std::vector<int> &output)
const override;
101 virtual void bcidDecision(
const std::vector<int> &bcidResults,
const std::vector<int> &range,
const std::vector<unsigned int> &mask, std::vector<int> &output)
const;
104 virtual void lut(
const std::vector<int> &
fir,
int slope,
int offset,
int cut,
int strategy,
bool disabled, std::vector<int> &output)
const override;
105 virtual void nonLinearLut(
const std::vector<int> &
fir,
int slope,
int offset,
int cut,
int scale,
short par1,
short par2,
short par3,
short par4,
bool disabled, std::vector<int> &output)
const;
108 virtual void bcidParams(
const L1CaloCoolChannelId& channelId,
int &energyLow,
int &energyHigh,
int &decisionSource, std::vector<unsigned int> &decisionConditions,
109 unsigned int &peakFinderStrategy,
int &satLow,
int &satHigh,
int &satLevel)
const override;
110 virtual void cpLutParams(
const L1CaloCoolChannelId& channelId,
int &startBit,
int &slope,
int &offset,
int &cut,
int &pedValue,
float &pedMean,
int &strategy,
bool &disabled)
override;
111 virtual void jepLutParams(
const L1CaloCoolChannelId& channelId,
int &startBit,
int &slope,
int &offset,
int &cut,
int &pedValue,
float &pedMean,
int &strategy,
bool &disabled)
override;
117 virtual bool satOverride(
int range)
const override;
120 virtual double FCalTTeta(
double nominalEta,
double phi,
int layer)
override;
130 unsigned int getLutOffset(
const double &pedMean,
const unsigned int &firStartBit,
const std::vector<short int> &firCoeff,
const unsigned int &lutSlope,
const unsigned int &lutStrategy)
const;
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
Property holding a SG store/key/clid from which a ReadHandle is made.
This class initializes the Calo (LAr and Tile) offline identifiers.
Helper class for offline TT identifiers.
Tool providing the mapping of the online and offline TriggerTower identifiers as well as the TT-cells...
Encapsulates the ID of one channel of conditions data in COOL, ie the ID of a row in a table.
Property holding a SG store/key/clid from which a ReadHandle is made.
const std::string process
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
TriggerTower_v2 TriggerTower
Define the latest version of the TriggerTower class.
Extra patterns decribing particle interation process.