18 m_wheelFpgas(wheelFpgas),
22 m_inputCentralJets(MAX_JETS_IN),
23 m_inputForwardJets(MAX_JETS_IN),
24 m_inputTauJets(MAX_JETS_IN),
25 m_centralJets(MAX_JETS_OUT),
26 m_forwardJets(MAX_JETS_OUT),
27 m_tauJets(MAX_JETS_OUT),
35 <<
"L1GctJetFinalStage::L1GctJetFinalStage() : Jet Final Stage instance has been incorrectly constructed!\n"
37 <<
" wheel jet FPGA pointers are present.\n";
48 <<
"L1GctJetFinalStage::L1GctJetFinalStage() : Jet Final Stage instance has been incorrectly constructed!\n"
49 <<
"Wheel jet FPGA pointer " <<
i <<
" has not been set!\n";
54 edm::LogError(
"L1GctSetupError") <<
"L1GctJetFinalStage has been incorrectly constructed";
67 os <<
"===L1GctJetFinalStage===" << endl;
68 os <<
"No. of Wheel Jet FPGAs " << fpga.
m_wheelFpgas.size() << std::endl;
71 os <<
"WheelJetFpga* " <<
i <<
" = " << fpga.
m_wheelFpgas.at(
i) << endl;
83 os <<
"No. of raw tau Jets " << fpga.
m_inputTauJets.size() << std::endl;
183 if (jets.at(iJet).bx() ==
bxAbs()) {
184 storageVector.at((iWheel*L1GctWheelJetFpga::MAX_JETS_OUT) + iJet) = jets.at(iJet);
void setInputForwardJet(int i, L1GctJetCand jet)
set the forward jets input data
bool isTau() const
check if this is a tau
int16_t bx() const
get bunch-crossing index
void store(const T &thisBx, const int bxNum)
bool m_verbose
Flag to control output messages.
virtual void resetPipelines()
Level-1 Trigger jet candidate.
virtual void process()
process the data, fill output buffers
std::vector< L1GctJetCand > JetVector
static const int MAX_JETS_OUT
Max number of jets of each type going out.
std::ostream & operator<<(std::ostream &out, const ALILine &li)
bool isForward() const
check if this is a forward jet
JetVector getSortedJets() const
static const int MAX_JETS_IN
Max number of jets of each type coming in.
JetPipeline m_forwardJets
ABC for a GCT trigger data processing unit.
void setInputCentralJet(int i, L1GctJetCand jet)
set the central jets input data
Represents the final stage of L1 jet processing.
L1GctJetSorter * m_forwardJetSorter
L1GctJetFinalStage(std::vector< L1GctWheelJetFpga * > m_wheelFpgas)
Takes a vector of 2 wheel jet FPGA pointers, with which to get input data from.
L1GctJetSorter * m_tauJetSorter
L1GctJetSorter * m_centralJetSorter
Jet sorters.
JetPipeline m_centralJets
std::vector< L1GctWheelJetFpga * > m_wheelFpgas
wheel jet FPGAs
bool empty() const
was an object really found?
void storeJets(JetVector &storageVector, JetVector jets, unsigned short iWheel)
Enters jets into the specified storageVector, according to which wheel card we are taking them from...
void setInputTauJet(int i, L1GctJetCand jet)
set the tau jets input data
void reset(const unsigned nBx)
virtual void resetProcessor()
Separate reset methods for the processor itself and any data stored in pipelines. ...
JetVector m_inputCentralJets
static const unsigned int MAX_WHEEL_FPGAS
Max number of wheel FPGA pointers.
JetVector m_inputForwardJets
static const int MAX_JETS_OUT
Max number of jets of each type we output.
bool isCentral() const
check if this is a central jet
void setJets(JetVector &inputJets)
std::vector< T > contents
virtual void fetchInput()
get input data from sources