18 m_inputLeafCards(leafCards),
19 m_inputEx(MAX_LEAF_CARDS),
20 m_inputEy(MAX_LEAF_CARDS),
21 m_inputEt(MAX_LEAF_CARDS),
22 m_inputHt(MAX_LEAF_CARDS),
36 edm::LogWarning(
"L1GctSetupError") <<
"L1GctWheelEnergyFpga::L1GctWheelEnergyFpga() : Wheel Energy Fpga ID " 37 <<
m_id <<
" has been incorrectly constructed!\n" 38 <<
"ID number should be 0 or 1.\n";
45 edm::LogWarning(
"L1GctSetupError") <<
"L1GctWheelEnergyFpga::L1GctWheelEnergyFpga() : Wheel Energy Fpga ID " 46 <<
m_id <<
" has been incorrectly constructed!\n" 47 <<
"This class needs " <<
MAX_LEAF_CARDS <<
" leaf card pointers, yet only " 56 edm::LogWarning(
"L1GctSetupError") <<
"L1GctWheelEnergyFpga::L1GctWheelEnergyFpga() : Wheel Energy Fpga ID " 57 <<
m_id <<
" has been incorrectly constructed!\n" 58 <<
"Input Leaf card pointer " <<
i <<
" has not been set!\n";
63 edm::LogError(
"L1GctSetupError") <<
"L1GctWheelEnergyFpga has been incorrectly constructed";
70 os <<
"===L1GctWheelEnergyFPGA===" << endl;
71 os <<
"ID : " << fpga.
m_id << endl;
76 os <<
"Input Ex " << endl;
80 os <<
"Input Ey " << endl;
84 os <<
"Input Et " << endl;
88 os <<
"Input Ht " << endl;
164 std::vector<L1GctInternEtSum>
result;
168 static_cast<int16_t
>(
bx -
bxMin())));
171 static_cast<int16_t
>(
bx -
bxMin())));
174 static_cast<int16_t
>(
bx -
bxMin())));
177 static_cast<int16_t
>(
bx -
bxMin())));
Emulates the energy summing on a GCT Wheel card.
etComponentType m_outputEx
output data
void resetProcessor() override
Separate reset methods for the processor itself and any data stored in pipelines. ...
static const unsigned int MAX_LEAF_CARDS
Max number of leaf card pointers.
void fetchInput() override
get input data from sources; this is the standard way to provide input
bool m_verbose
Flag to control output messages.
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
Log< level::Error, false > LogError
bool overFlow() const
access overflow
ABC for a GCT trigger data processing unit.
Pipeline< etTotalType > m_outputEtPipe
int bxMin() const
Support for multiple beam crossing operation.
std::vector< etComponentType > m_inputEx
the input components from each input card
static L1GctInternEtSum fromEmulatorMissEtxOrEty(int missEtxOrEty, bool overFlow, int16_t bx)
std::vector< etTotalType > m_inputEt
static L1GctInternEtSum fromEmulatorTotalEtOrHt(unsigned totEtOrHt, bool overFlow, int16_t bx)
Pipeline< etComponentType > m_outputExPipe
record the output data history
std::vector< etComponentType > m_inputEy
bool m_setupOk
check the setup
L1GctWheelEnergyFpga(int id, const std::vector< L1GctJetLeafCard *> &leafCards)
Constructor, needs the Leaf cards to be set up first. id should be 0 or 1.
void resetPipelines() override
void reset()
reset value and overflow to zero
ostream & operator<<(ostream &os, const L1GctWheelEnergyFpga &fpga)
etComponentType m_outputEy
void setValue(unsigned value)
Set value from unsigned.
void reset()
reset value and overflow to zero
std::vector< L1GctJetLeafCard * > m_inputLeafCards
the jet leaf card
Pipeline< etComponentType > m_outputEyPipe
Log< level::Warning, false > LogWarning
void process() override
process the data, fill output buffers
static const unsigned int MAX_LEAF_CARDS
Max number of leaf card pointers.
~L1GctWheelEnergyFpga() override
Destructor.
std::vector< L1GctInternEtSum > getInternalEtSums() const
get the Et sums in internal component format