31 os <<
"===L1GctTdrJetFinder===" << endl;
56 for(
UShort column = 0; column <2; ++column)
63 bool hfBoundary = (row == COL_OFFSET-1);
65 bool heBoundary = (row == COL_OFFSET-5);
68 if ((centreIndex % COL_OFFSET != 0)
79 if(row < COL_OFFSET-4)
172 for(
int column = -1; column <= +1; ++column)
181 for(
int column = -1; column <= +1; ++column)
200 bool partial[3] = {
false,
false,
false};
204 for(
int column = -1; column <= +1; ++column)
207 m_inputRegions.at( centreIndex + (column*COL_OFFSET)).tauVeto() ||
213 for(
int column = -1; column <= +1; ++column)
219 return partial[0] || partial[1] || partial[2];
void reset()
complete reset of processor
3*3 sliding window algorithm jet finder.
static const unsigned int MAX_JETS_OUT
Max of 6 jets found per jetfinder in a 2*11 search area.
static const unsigned int MAX_REGIONS_IN
The real jetFinders must define these constants.
friend std::ostream & operator<<(std::ostream &os, const L1GctTdrJetFinder &algo)
Overload << operator.
void findJets()
Here is the TDR 3x3 sliding window jet finder algorithm.
bool calcJetTauVeto(const UShort centreIndex, const bool boundary=false) const
Returns combined tauVeto of the 9 regions centred (physically) about centreIndex. Set boundary = true...
bool setupOk() const
Check setup is Ok.
static const unsigned N_ETA
Base class to allow implementation of jetFinder algorithms.
virtual unsigned centralCol0() const
ULong calcJetEnergy(const UShort centreIndex, const bool boundary=false) const
Returns energy sum of the 9 regions centred (physically) about centreIndex. Set boundary = true if at...
static const unsigned int CENTRAL_COL0
virtual void process()
process the data, fill output buffers
void sortJets()
Sort the found jets. All jetFinders should call this in process().
unsigned short int UShort
bool detectJet(const UShort centreIndex, const bool boundary=false) const
Returns true if region index is the centre of a jet. Set boundary = true if at edge of HCAL...
static const unsigned int COL_OFFSET
The index offset between columns.
RawJetVector m_outputJets
output jets
RegionsVector m_inputRegions
virtual void fetchInput()
get input data from sources
L1CaloRegionDetId calcJetPosition(const UShort centreIndex) const
returns the encoded (eta, phi) position of the centre region
static const unsigned N_PHI
unsigned m_minColThisJf
parameter to determine which Regions belong in our acceptance
void doEnergySums()
Fill the Et strip sums and Ht sum. All jetFinders should call this in process().
static const unsigned int N_COLS
L1GctTdrJetFinder(int id)
id is 0-8 for -ve Eta jetfinders, 9-17 for +ve Eta, for increasing Phi.