1 #ifndef L1GCTELECTRONLEAFCARD_H_ 2 #define L1GCTELECTRONLEAFCARD_H_ 41 void setBxRange(
const int firstBx,
const int numberOfBx);
std::vector< L1GctEmCand > getOutputNonIsoEmCands(int fpga)
get the output candidates
L1GctElectronSorter * getNonIsoElectronSorterU1()
void resetPipelines() override
void setupObjects() override
Initialise inputs with null objects for the correct bunch crossing if required.
L1GctElectronSorter * getNonIsoElectronSorterU2()
void fetchInput() override
fetch input data
void resetProcessor() override
Separate reset methods for the processor itself and any data stored in pipelines. ...
friend std::ostream & operator<<(std::ostream &s, const L1GctEmLeafCard &card)
overload of cout operator
void setNextBx(const int bxnum)
clear input data buffers and process a new bunch crossing
ABC for a GCT trigger data processing unit.
std::vector< L1GctEmCand > getOutputIsoEmCands(int fpga)
get the output candidates
static const unsigned N_SORTERS
L1GctElectronSorter * getIsoElectronSorterU1()
Class that sorts electron candidates.
std::vector< L1GctElectronSorter * > m_sorters
processing - 0,2 are iso sorters, 1,3 are non-iso
~L1GctEmLeafCard() override
destruct
std::ostream & operator<<(std::ostream &s, const L1GctEmLeafCard &card)
void reset()
clear internal trigger data buffers
void setBxRange(const int firstBx, const int numberOfBx)
define the bunch crossing range to process
L1GctElectronSorter * getIsoElectronSorterU2()
Emulates a leaf card programmed for electron sorting.
L1GctEmLeafCard(int id)
construct with ID
void process() override
process the event