8#ifndef IL1TRIGGERTOWERTOOLRUN3_H
9#define IL1TRIGGERTOWERTOOLRUN3_H
14#include "GaudiKernel/IAlgTool.h"
15#include "Identifier/Identifier.h"
37 virtual void process(
const std::vector<int> &digits,
38 double eta,
double phi,
int EmHad,
39 std::vector<int> &
et, std::vector<int> &bcidResults,
40 std::vector<int> &bcidDecisions,
bool useJepLut =
true) = 0;
43 std::vector<int> &
et, std::vector<int> &bcidResults,
44 std::vector<int> &bcidDecisions,
bool useJepLut =
true) = 0;
47 virtual void simulateChannel(
const xAOD::TriggerTower& tt, std::vector<int>& outCpLut, std::vector<int>& outJepLut, std::vector<int>& bcidResults,std::vector<int>& bcidDecisions)
const = 0;
50 int bcid,
float mu, std::vector<int_least16_t>& correctionOut) = 0;
52 virtual void fir(
const std::vector<int> &digits,
const L1CaloCoolChannelId& channelId, std::vector<int> &output)
const = 0;
53 virtual void fir(
const std::vector<int> &digits,
const std::vector<int> &firCoeffs, std::vector<int> &output)
const = 0;
55 virtual void dropBits(
const std::vector<int> &
fir,
unsigned int first, std::vector<int> &output)
const = 0;
57 virtual void etRange(
const std::vector<int> &
et,
int energyLow,
int energyHigh, std::vector<int> &output)
const = 0;
59 virtual void peakBcid(
const std::vector<int> &
fir,
unsigned int strategy, std::vector<int> &output)
const = 0;
61 virtual void satBcid(
const std::vector<int> &digits,
int satLow,
int satHigh,
int satLevel, std::vector<int> &output)
const = 0;
62 virtual void bcid(
const std::vector<int> &
fir,
const std::vector<int> &digits,
const L1CaloCoolChannelId& channelId, std::vector<int> &output)
const = 0;
63 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 = 0;
64 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 = 0;
66 virtual void bcidDecision(
const std::vector<int> &bcidResults,
const std::vector<int> &range, std::vector<int> &output)
const = 0;
69 virtual void lut(
const std::vector<int> &
fir,
int slope,
int offset,
int cut,
int strategy,
bool disabled, std::vector<int> &output)
const= 0;
72 virtual void bcidParams(
const L1CaloCoolChannelId& channelId,
int &energyLow,
int &energyHigh,
int &decisionSource, std::vector<unsigned int>& decisionConditions,
73 unsigned int &peakFinderStrategy,
int &satLow,
int &satHigh,
int &satLevel)
const= 0;
74 virtual void cpLutParams(
const L1CaloCoolChannelId& channelId,
int &startBit,
int &slope,
int &offset,
int &cut,
int &pedValue,
float &pedMean,
int &strategy,
bool &disabled) = 0;
75 virtual void jepLutParams(
const L1CaloCoolChannelId& channelId,
int &startBit,
int &slope,
int &offset,
int &cut,
int &pedValue,
float &pedMean,
int &strategy,
bool &disabled) = 0;
84 virtual double FCalTTeta(
double nominalEta,
double phi,
int layer) = 0;
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
Encapsulates the ID of one channel of conditions data in COOL, ie the ID of a row in a table.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
static const InterfaceID IID_IL1TriggerTowerToolRun3("LVL1::IL1TriggerTowerToolRun3", 1, 0)
Interface for L1TriggerTowerToolRun3.
TriggerTower_v2 TriggerTower
Define the latest version of the TriggerTower class.
Extra patterns decribing particle interation process.