1 #ifndef L1GCTGLOBALHFSUMALGOS_H_
2 #define L1GCTGLOBALHFSUMALGOS_H_
12 class L1GctHfLutSetup;
81 std::map<L1GctHfEtSumsLut::hfLutType, const L1GctHfBitCountsLut*>
m_bitCountLuts;
82 std::map<L1GctHfEtSumsLut::hfLutType, const L1GctHfEtSumsLut*>
m_etSumLuts;
bool setupOk() const
check setup
std::vector< unsigned > hfSumsWord() const
L1GctWheelJetFpga * m_minusWheelJetFpga
void process() override
process the data, fill output buffers
void fetchInput() override
get input data from sources; this is the standard way to provide input
std::map< L1GctHfEtSumsLut::hfLutType, Pipeline< uint16_t > > m_hfOutputSumsPipe
Represents a GCT Wheel Jet FPGA.
Emulates the GCT summing and packing of Hf Et sums and tower-over-threshold counts.
hfTowerSumsType m_hfInputSumsPlusWheel
L1GctGlobalHfSumAlgos(const std::vector< L1GctWheelJetFpga * > &WheelJetFpga)
Constructor needs the Wheel card Fpgas set up first.
friend std::ostream & operator<<(std::ostream &os, const L1GctGlobalHfSumAlgos &fpga)
Overload << operator.
std::ostream & operator<<(std::ostream &out, const ALILine &li)
hfTowerSumsType m_hfInputSumsMinusWheel
void resetProcessor() override
Separate reset methods for the processor itself and any data stored in pipelines. ...
ABC for a GCT trigger data processing unit.
std::map< L1GctHfEtSumsLut::hfLutType, const L1GctHfEtSumsLut * > m_etSumLuts
void setupObjects() override
Initialise inputs with null objects for the correct bunch crossing if required.
const L1GctHfBitCountsLut * getBCLut(const L1GctHfEtSumsLut::hfLutType type) const
Get lut pointers.
~L1GctGlobalHfSumAlgos() override
Destructor.
L1GctWheelJetFpga * m_plusWheelJetFpga
LUT for compression of HF feature bit counts to output format.
void storeEtSum(L1GctHfEtSumsLut::hfLutType type, uint16_t value)
std::vector< uint16_t > hfSumsOutput(const L1GctHfEtSumsLut::hfLutType type) const
Access to output quantities.
LUT for compression of HF Et sum to output format.
std::map< L1GctHfEtSumsLut::hfLutType, const L1GctHfBitCountsLut * > m_bitCountLuts
L1GctJetFinderBase::hfTowerSumsType hfTowerSumsType
const L1GctHfEtSumsLut * getESLut(const L1GctHfEtSumsLut::hfLutType type) const
std::vector< double > getThresholds(const L1GctHfEtSumsLut::hfLutType type) const
Get thresholds.
void resetPipelines() override
L1GctWheelJetFpga * getMinusWheelJetFpga() const
provide access to input pointer, Wheel Jet Fpga 0
L1GctWheelJetFpga * getPlusWheelJetFpga() const
provide access to input pointer, Wheel Jet Fpga 1
void setupLuts(const L1CaloEtScale *scale)
Setup luts.
void storeBitCount(L1GctHfEtSumsLut::hfLutType type, uint16_t value)