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