ATLAS Offline Software
IL1TriggerTowerToolRun3.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
5 // L1TriggerTowerToolRun3.h,
7 
8 #ifndef IL1TRIGGERTOWERTOOLRUN3_H
9 #define IL1TRIGGERTOWERTOOLRUN3_H
10 
11 #include <cstdint>
12 #include <vector>
13 
14 #include "GaudiKernel/IAlgTool.h"
15 #include "Identifier/Identifier.h"
19 
20 namespace LVL1
21 {
22 
27 static const InterfaceID IID_IL1TriggerTowerToolRun3("LVL1::IL1TriggerTowerToolRun3",1,0);
28 
29 class IL1TriggerTowerToolRun3 : virtual public IAlgTool {
30  public:
31 
32  static const InterfaceID& interfaceID( );
33 
34  // declaration of interface-defining member functions
35 
36 
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;
41 
42  virtual void process(const std::vector<int> &digits, const L1CaloCoolChannelId& channelId,
43  std::vector<int> &et, std::vector<int> &bcidResults,
44  std::vector<int> &bcidDecisions, bool useJepLut = true) = 0;
45 
46 
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;
48 
49  virtual void pedestalCorrection(std::vector<int>& firInOut, int firPed, int iElement, int layer,
50  int bcid, float mu, std::vector<int_least16_t>& correctionOut) = 0;
51 
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;
54  virtual void dropBits(const std::vector<int> &fir, const L1CaloCoolChannelId& channelId, std::vector<int> &output) const = 0;
55  virtual void dropBits(const std::vector<int> &fir, unsigned int first, std::vector<int> &output) const = 0;
56  virtual void etRange(const std::vector<int> &et, const L1CaloCoolChannelId& channelId, 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;
58  virtual void peakBcid(const std::vector<int> &fir, const L1CaloCoolChannelId& channelId, std::vector<int> &output) const = 0;
59  virtual void peakBcid(const std::vector<int> &fir, unsigned int strategy, std::vector<int> &output) const = 0;
60  virtual void satBcid(const std::vector<int> &digits, const L1CaloCoolChannelId& channelId, 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;
65  virtual void bcidDecisionRange(const std::vector<int>& lutInput, const std::vector<int>& digits, const L1CaloCoolChannelId& channelId, std::vector<int> &output) const = 0;
66  virtual void bcidDecision(const std::vector<int> &bcidResults, const std::vector<int> &range, std::vector<int> &output) const = 0;
67  virtual void cpLut(const std::vector<int> &fir, const L1CaloCoolChannelId& channelId, std::vector<int> &output) const = 0;
68  virtual void jepLut(const std::vector<int> &fir, const L1CaloCoolChannelId& channelId, 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;
70  virtual void applyEtRange(const std::vector<int>& lut, const std::vector<int>& range, const L1CaloCoolChannelId& channelId, std::vector<int>& output) const = 0;
71  virtual void firParams(const L1CaloCoolChannelId& channelId, std::vector<int>& firCoeffs) 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;
76  virtual Identifier identifier(double eta, double phi, int layer) = 0;
77  virtual HWIdentifier hwIdentifier(double eta, double phi, int layer) = 0;
78  virtual HWIdentifier hwIdentifier(const Identifier& id) = 0;
79  virtual L1CaloCoolChannelId channelID(double eta, double phi, int layer) = 0;
80  virtual L1CaloCoolChannelId channelID(const Identifier& id) = 0;
81  virtual bool satOverride(int range) const = 0;
82  virtual bool disabledChannel(const L1CaloCoolChannelId& channelId) const = 0;
83  virtual double FCalTTeta(const L1CaloCoolChannelId& channelId) = 0;
84  virtual double FCalTTeta(double nominalEta, double phi, int layer) = 0;
85  virtual std::pair<double, double> refValues(const L1CaloCoolChannelId& channelId) = 0;
86 
87 };
88 
89 inline const InterfaceID& IL1TriggerTowerToolRun3::interfaceID()
90 {
91  return IID_IL1TriggerTowerToolRun3;
92 }
93 
94 } // end of namespace
95 
96 #endif
xAOD::strategy
strategy
Definition: L2CombinedMuon_v1.cxx:107
L1CaloCoolChannelId.h
LVL1::IL1TriggerTowerToolRun3::firParams
virtual void firParams(const L1CaloCoolChannelId &channelId, std::vector< int > &firCoeffs) const =0
et
Extra patterns decribing particle interation process.
get_generator_info.result
result
Definition: get_generator_info.py:21
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
LVL1::IL1TriggerTowerToolRun3::etRange
virtual void etRange(const std::vector< int > &et, int energyLow, int energyHigh, std::vector< int > &output) const =0
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
LVL1::IL1TriggerTowerToolRun3::FCalTTeta
virtual double FCalTTeta(const L1CaloCoolChannelId &channelId)=0
TriggerTowerContainer.h
LVL1::IL1TriggerTowerToolRun3::bcidDecision
virtual void bcidDecision(const std::vector< int > &bcidResults, const std::vector< int > &range, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3
Definition: IL1TriggerTowerToolRun3.h:29
LVL1::IL1TriggerTowerToolRun3::lut
virtual void lut(const std::vector< int > &fir, int slope, int offset, int cut, int strategy, bool disabled, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::dropBits
virtual void dropBits(const std::vector< int > &fir, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::interfaceID
static const InterfaceID & interfaceID()
Definition: IL1TriggerTowerToolRun3.h:89
LVL1::IL1TriggerTowerToolRun3::hwIdentifier
virtual HWIdentifier hwIdentifier(const Identifier &id)=0
HWIdentifier
Definition: HWIdentifier.h:13
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::IL1TriggerTowerToolRun3::fir
virtual void fir(const std::vector< int > &digits, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::jepLutParams
virtual void jepLutParams(const L1CaloCoolChannelId &channelId, int &startBit, int &slope, int &offset, int &cut, int &pedValue, float &pedMean, int &strategy, bool &disabled)=0
LVL1::IL1TriggerTowerToolRun3::process
virtual void process(const std::vector< int > &digits, const L1CaloCoolChannelId &channelId, std::vector< int > &et, std::vector< int > &bcidResults, std::vector< int > &bcidDecisions, bool useJepLut=true)=0
LVL1::IL1TriggerTowerToolRun3::applyEtRange
virtual void applyEtRange(const std::vector< int > &lut, const std::vector< int > &range, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::bcid
virtual void bcid(const std::vector< int > &fir, const std::vector< int > &digits, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::cpLut
virtual void cpLut(const std::vector< int > &fir, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
LVL1::IL1TriggerTowerToolRun3::peakBcid
virtual void peakBcid(const std::vector< int > &fir, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
xAOD::TriggerTower_v2
Description of TriggerTower_v2.
Definition: TriggerTower_v2.h:49
LVL1::IL1TriggerTowerToolRun3::bcid
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
BindingsTest.cut
cut
This script demonstrates how to call a C++ class from Python Also how to use PyROOT is shown.
Definition: BindingsTest.py:13
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:195
LVL1::IL1TriggerTowerToolRun3::disabledChannel
virtual bool disabledChannel(const L1CaloCoolChannelId &channelId) const =0
LVL1::IL1TriggerTowerToolRun3::cpLutParams
virtual void cpLutParams(const L1CaloCoolChannelId &channelId, int &startBit, int &slope, int &offset, int &cut, int &pedValue, float &pedMean, int &strategy, bool &disabled)=0
LVL1::IL1TriggerTowerToolRun3::satOverride
virtual bool satOverride(int range) const =0
Make4DCorrelationMatrix.nominalEta
int nominalEta
Definition: Make4DCorrelationMatrix.py:80
SCT_Monitoring::disabled
@ disabled
Definition: SCT_MonitoringNumbers.h:60
LVL1::IL1TriggerTowerToolRun3::satBcid
virtual void satBcid(const std::vector< int > &digits, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
CaloCondBlobAlgs_fillNoiseFromASCII.channelId
channelId
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:122
LVL1::IL1TriggerTowerToolRun3::channelID
virtual L1CaloCoolChannelId channelID(double eta, double phi, int layer)=0
LVL1::IL1TriggerTowerToolRun3::hwIdentifier
virtual HWIdentifier hwIdentifier(double eta, double phi, int layer)=0
merge.output
output
Definition: merge.py:17
LVL1::IL1TriggerTowerToolRun3::refValues
virtual std::pair< double, double > refValues(const L1CaloCoolChannelId &channelId)=0
HWIdentifier.h
LVL1::IL1TriggerTowerToolRun3::identifier
virtual Identifier identifier(double eta, double phi, int layer)=0
LVL1::IL1TriggerTowerToolRun3::FCalTTeta
virtual double FCalTTeta(double nominalEta, double phi, int layer)=0
LVL1::IL1TriggerTowerToolRun3::bcid
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
L1CaloCoolChannelId
Definition: L1CaloCoolChannelId.h:10
LVL1::IL1TriggerTowerToolRun3::process
virtual void process(const std::vector< int > &digits, double eta, double phi, int EmHad, std::vector< int > &et, std::vector< int > &bcidResults, std::vector< int > &bcidDecisions, bool useJepLut=true)=0
LVL1::IL1TriggerTowerToolRun3::jepLut
virtual void jepLut(const std::vector< int > &fir, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
DeMoScan.first
bool first
Definition: DeMoScan.py:534
convertTimingResiduals.offset
offset
Definition: convertTimingResiduals.py:71
LVL1::IL1TriggerTowerToolRun3::simulateChannel
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
LVL1::IL1TriggerTowerToolRun3::peakBcid
virtual void peakBcid(const std::vector< int > &fir, unsigned int strategy, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::etRange
virtual void etRange(const std::vector< int > &et, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::bcidDecisionRange
virtual void bcidDecisionRange(const std::vector< int > &lutInput, const std::vector< int > &digits, const L1CaloCoolChannelId &channelId, std::vector< int > &output) const =0
CaloNoise_fillDB.mu
mu
Definition: CaloNoise_fillDB.py:53
TileDCSDataPlotter.tt
tt
Definition: TileDCSDataPlotter.py:874
LVL1::IL1TriggerTowerToolRun3::bcidParams
virtual void bcidParams(const L1CaloCoolChannelId &channelId, int &energyLow, int &energyHigh, int &decisionSource, std::vector< unsigned int > &decisionConditions, unsigned int &peakFinderStrategy, int &satLow, int &satHigh, int &satLevel) const =0
LVL1::IL1TriggerTowerToolRun3::fir
virtual void fir(const std::vector< int > &digits, const std::vector< int > &firCoeffs, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::channelID
virtual L1CaloCoolChannelId channelID(const Identifier &id)=0
LVL1::IL1TriggerTowerToolRun3::satBcid
virtual void satBcid(const std::vector< int > &digits, int satLow, int satHigh, int satLevel, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::dropBits
virtual void dropBits(const std::vector< int > &fir, unsigned int first, std::vector< int > &output) const =0
LVL1::IL1TriggerTowerToolRun3::pedestalCorrection
virtual void pedestalCorrection(std::vector< int > &firInOut, int firPed, int iElement, int layer, int bcid, float mu, std::vector< int_least16_t > &correctionOut)=0