Skip to content
Snippets Groups Projects
Commit f43f72be authored by Veit Lorenz Scharf's avatar Veit Lorenz Scharf Committed by Graeme Stewart
Browse files

tag TrigT1CaloToolInterfaces-00-01-02 -- extension to IL1TriggerTower...

tag TrigT1CaloToolInterfaces-00-01-02 -- extension to IL1TriggerTower interface for Run-2 nMCM functionality (TrigT1CaloToolInterfaces-00-01-02)
parent a9a0192c
No related branches found
No related tags found
No related merge requests found
......@@ -10,21 +10,20 @@
#include "GaudiKernel/IAlgTool.h"
//#include "TrigT1CaloUtils/CPAlgorithm.h"
#include "xAODTrigL1Calo/CMXCPTobContainer.h"
#include "xAODTrigL1Calo/CMXCPHitsContainer.h"
namespace LVL1
{
class CMXCPHits;
class CPAlgorithm;
class CMXCPTob;
class CPMTobRoI;
class EmTauROI;
/**
Interface definition for L1CPCMXTools
*/
class CPAlgorithm;
class CPMTobRoI;
class EmTauROI;
/**
Interface definition for L1CPCMXTools
*/
static const InterfaceID IID_IL1CPCMXTools("LVL1::IL1CPCMXTools", 1, 0);
class IL1CPCMXTools : virtual public IAlgTool {
public:
static const InterfaceID& interfaceID( ) ;
......@@ -35,18 +34,18 @@ Interface definition for L1CPCMXTools
virtual void formCPMTobRoI(const DataVector<EmTauROI>* emTauRoiVec,
DataVector<CPMTobRoI>* cpmRoiVec) const = 0;
virtual void formCMXCPTob(const DataVector<CPMTobRoI>* cpmRoiVec,
DataVector<CMXCPTob>* cmxTobVec) const = 0;
xAOD::CMXCPTobContainer* cmxTobVec) const = 0;
virtual void formCMXCPTob(
const std::vector<const DataVector<CPMTobRoI>*>& cpmRoiColls,
DataVector<CMXCPTob>* cmxTobVec, int peak) const = 0;
virtual void formCMXCPHits(const DataVector<CMXCPTob>* cmxTobVec,
DataVector<CMXCPHits>* cmxHitsVec) const = 0;
virtual void formCMXCPHitsCrate(const DataVector<CMXCPTob>* cmxTobVec,
DataVector<CMXCPHits>* cmxHitsCrate) const = 0;
virtual void formCMXCPHitsSystem(const DataVector<CMXCPHits>* cmxHitsCrate,
DataVector<CMXCPHits>* cmxHitsSys) const = 0;
virtual void formCMXCPHitsTopo(const DataVector<CMXCPTob>* cmxTobVec,
DataVector<CMXCPHits>* cmxHitsTopo) const = 0;
xAOD::CMXCPTobContainer* cmxTobVec, uint8_t peak) const = 0;
virtual void formCMXCPHits(const xAOD::CMXCPTobContainer* cmxTobVec,
xAOD::CMXCPHitsContainer* cmxHitsVec) const = 0;
virtual void formCMXCPHitsCrate(const xAOD::CMXCPTobContainer* cmxTobVec,
xAOD::CMXCPHitsContainer* cmxHitsCrate) const = 0;
virtual void formCMXCPHitsSystem(const xAOD::CMXCPHitsContainer* cmxHitsCrate,
xAOD::CMXCPHitsContainer* cmxHitsSys) const = 0;
virtual void formCMXCPHitsTopo(const xAOD::CMXCPTobContainer* cmxTobVec,
xAOD::CMXCPHitsContainer* cmxHitsTopo) const = 0;
};
......
......@@ -40,14 +40,15 @@ class IL1TriggerTowerTool : virtual public IAlgTool {
virtual StatusCode retrieveConditions() = 0;
// the useJepLut parameters is ignored for Run-1 data
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) = 0;
std::vector<int> &bcidDecisions, bool useJepLut = true) = 0;
virtual void process(const std::vector<int> &digits, const L1CaloCoolChannelId& channelId,
std::vector<int> &et, std::vector<int> &bcidResults,
std::vector<int> &bcidDecisions) = 0;
std::vector<int> &bcidDecisions, bool useJepLut = true) = 0;
virtual void pedestalCorrection(std::vector<int>& firInOut, int firPed, int iElement, int layer,
int bcid, float mu, std::vector<int_least16_t>& correctionOut) = 0;
......@@ -70,12 +71,16 @@ class IL1TriggerTowerTool : virtual public IAlgTool {
virtual void bcidDecision(const std::vector<int> &bcidResults, const std::vector<int> &range, const L1CaloCoolChannelId& channelId, std::vector<int> &output) = 0;
virtual void bcidDecision(const std::vector<int> &bcidResults, const std::vector<int> &range, const std::vector<unsigned int> &mask, std::vector<int> &output) = 0;
virtual void lut(const std::vector<int> &fir, const L1CaloCoolChannelId& channelId, std::vector<int> &output) = 0;
virtual void cpLut(const std::vector<int> &fir, const L1CaloCoolChannelId& channelId, std::vector<int> &output) = 0;
virtual void jepLut(const std::vector<int> &fir, const L1CaloCoolChannelId& channelId, std::vector<int> &output) = 0;
virtual void lut(const std::vector<int> &fir, int slope, int offset, int cut, int ped, int strategy, bool disabled, std::vector<int> &output) = 0;
virtual void applyEtRange(const std::vector<int>& lut, const std::vector<int>& range, const L1CaloCoolChannelId& channelId, std::vector<int>& output) = 0;
virtual void firParams(const L1CaloCoolChannelId& channelId, std::vector<int>& firCoeffs) = 0;
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) = 0;
virtual void lutParams(const L1CaloCoolChannelId& channelId, int &startBit, int &slope, int &offset, int &cut, int &pedValue, float &pedMean, int &strategy, bool &disabled) = 0;
virtual void cpLutParams(const L1CaloCoolChannelId& channelId, int &startBit, int &slope, int &offset, int &cut, int &pedValue, float &pedMean, int &strategy, bool &disabled) = 0;
virtual void jepLutParams(const L1CaloCoolChannelId& channelId, int &startBit, int &slope, int &offset, int &cut, int &pedValue, float &pedMean, int &strategy, bool &disabled) = 0;
virtual Identifier identifier(double eta, double phi, int layer) = 0;
virtual HWIdentifier hwIdentifier(double eta, double phi, int layer) = 0;
virtual HWIdentifier hwIdentifier(const Identifier& id) = 0;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment