1 #ifndef L1GCTWHEELENERGYFPGA_H_ 2 #define L1GCTWHEELENERGYFPGA_H_ Emulates the energy summing on a GCT Wheel card.
friend std::ostream & operator<<(std::ostream &os, const L1GctWheelEnergyFpga &fpga)
Overload << operator.
etComponentType m_outputEx
output data
std::ostream & operator<<(std::ostream &os, const L1GctWheelEnergyFpga &fpga)
void resetProcessor() override
Separate reset methods for the processor itself and any data stored in pipelines. ...
void fetchInput() override
get input data from sources; this is the standard way to provide input
void setupObjects() override
Initialise inputs with null objects for the correct bunch crossing if required.
Pipeline< etHadType > m_outputHtPipe
std::vector< etHadType > m_inputHt
void setInputEnergy(unsigned i, int ex, int ey, unsigned et, unsigned ht)
set input data; not used in normal operation
etComponentType getOutputEx() const
get output Ex value
ABC for a GCT trigger data processing unit.
etTotalType getOutputEt() const
get output Et value
Pipeline< etTotalType > m_outputEtPipe
etComponentType getInputEy(unsigned leafnum) const
get input Ey value from a Leaf card (0-2)
std::vector< etComponentType > m_inputEx
the input components from each input card
bool setupOk() const
check the setup
std::vector< etTotalType > m_inputEt
etComponentType getOutputEy() const
get output Ey value
Pipeline< etComponentType > m_outputExPipe
record the output data history
L1GctUnsignedInt< L1GctInternEtSum::kTotEtOrHtNBits > etTotalType
typedefs for energy values in fixed numbers of bits
std::vector< etComponentType > m_inputEy
bool m_setupOk
check the setup
etTotalType getInputEt(unsigned leafnum) const
get input Et value from a Leaf card (0-2)
L1GctWheelEnergyFpga(int id, const std::vector< L1GctJetLeafCard *> &leafCards)
Constructor, needs the Leaf cards to be set up first. id should be 0 or 1.
L1GctUnsignedInt< L1GctInternEtSum::kTotEtOrHtNBits > etHadType
void resetPipelines() override
L1GctJetLeafCard * getinputLeafCard(unsigned leafnum) const
provide access to input Leaf card pointer (0-2)
etComponentType m_outputEy
std::vector< L1GctJetLeafCard * > m_inputLeafCards
the jet leaf card
Pipeline< etComponentType > m_outputEyPipe
etHadType inputHt(unsigned leafnum) const
get input Ht value from a Leaf card (0-2)
void process() override
process the data, fill output buffers
static const unsigned int MAX_LEAF_CARDS
Max number of leaf card pointers.
L1GctTwosComplement< L1GctInternEtSum::kMissExOrEyNBits > etComponentType
etComponentType getInputEx(unsigned leafnum) const
get input Ex value from a Leaf card (0-2)
~L1GctWheelEnergyFpga() override
Destructor.
std::vector< L1GctInternEtSum > getInternalEtSums() const
get the Et sums in internal component format
etHadType getOutputHt() const
get the output Ht