1 #ifndef L1GCTWHEELJETFPGA_H_ 2 #define L1GCTWHEELJETFPGA_H_
L1GctJetLeafCard::hfTowerSumsType hfTowerSumsType
JetVector getForwardJets() const
get the output jets
void setupJetsVectors(const int16_t bx)
Initialises all the jet vectors with jets of the correct type.
htComponentType m_outputHy
void setupObjects() override
Initialise inputs with null objects for the correct bunch crossing if required.
std::vector< L1GctInternHtMiss > getInternalHtMiss() const
get the Et sums in internal component format
Represents a GCT Wheel Jet FPGA.
static const unsigned int MAX_LEAF_CARDS
Max number of leaf card pointers.
std::vector< htComponentType > m_inputHy
std::vector< htComponentType > m_inputHx
htComponentType inputHx(unsigned leafnum) const
get the input Ht components
void process() override
process the data, fill output buffers
Level-1 Trigger jet candidate.
JetVector m_inputJets
input data. Jets 0-5 from leaf card 0, jetfinderA. Jets 6-11 from leaf card 0, jetfinder B...
Pipeline< htComponentType > m_outputHxPipe
L1GctTwosComplement< L1GctInternHtMiss::kMissHxOrHyNBits > htComponentType
void fetchInput() override
get input data from sources
JetVector getTauJets() const
get the output jets
std::vector< L1GctJetCand > JetVector
void resetPipelines() override
ABC for a GCT trigger data processing unit.
bool setupOk() const
Public access to setup check.
L1GctWheelJetFpga(int id, const std::vector< L1GctJetLeafCard *> &inputLeafCards)
id must be 0 / 1 for -ve/+ve eta halves of CMS
void resetProcessor() override
Separate reset methods for the processor itself and any data stored in pipelines. ...
void storeJets(const JetVector &jets, unsigned short iLeaf, unsigned short offset)
Puts the output from a jetfinder into the correct index range of the m_inputJets array.
JetVector getInputJets() const
get the input jets. Jets 0-5 from leaf card 0, jetfinderA. Jets 6-11 from leaf card 0...
std::vector< hfTowerSumsType > m_inputHfSums
bool checkSetup() const
Check the setup, independently of how we have been constructed.
L1GctJetSorter * m_centralJetSorter
Jet sorters.
htComponentType inputHy(unsigned leafnum) const
htComponentType m_outputHx
hfTowerSumsType inputHfSums(unsigned leafnum) const
get the input Hf Sums
friend std::ostream & operator<<(std::ostream &os, const L1GctWheelJetFpga &fpga)
Overload << operator.
Pipeline< htComponentType > m_outputHyPipe
hfTowerSumsType getOutputHfSums() const
get the output Hf Sums
void setInputJet(int i, const L1GctJetCand &jet)
set input data
~L1GctWheelJetFpga() override
destructor
static const int MAX_JETS_IN
Maximum number of jets we can have as input.
static const int MAX_JETS_OUT
Max number of jets of each type we output.
JetVector m_rawForwardJets
std::vector< L1GctJetLeafCard * > m_inputLeafCards
the jet leaf cards
L1GctJetSorter * m_tauJetSorter
JetVector getCentralJets() const
get the output jets
hfTowerSumsType m_outputHfSums
std::ostream & operator<<(std::ostream &os, const L1GctWheelJetFpga &fpga)
htComponentType getOutputHy() const
static const unsigned int MAX_JETS_PER_LEAF
Max number of jets input from each leaf card.
L1GctJetSorter * m_forwardJetSorter
JetVector m_rawCentralJets
htComponentType getOutputHx() const
get the output Ht components
void classifyJets()
Classifies jets into central, forward or tau.