Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:19:51

0001 #ifndef L1GCTNULLJETFINDER_H_
0002 #define L1GCTNULLJETFINDER_H_
0003 
0004 #include "L1Trigger/GlobalCaloTrigger/interface/L1GctJetFinderBase.h"
0005 
0006 #include <vector>
0007 
0008 /*! \class L1GctNullJetFinder
0009  * \brief no-op jet finder for test purposes.
0010  *
0011  * For use with hardware testing where not all leaf cards are present
0012  *  
0013  */
0014 /*
0015  * \author Greg Heath
0016  * \date March 2010
0017  */
0018 
0019 class L1GctNullJetFinder : public L1GctJetFinderBase {
0020 public:
0021   /// id is 0-8 for -ve Eta jetfinders, 9-17 for +ve Eta, for increasing Phi.
0022   L1GctNullJetFinder(int id);
0023 
0024   ~L1GctNullJetFinder() override;
0025 
0026   /// Overload << operator
0027   friend std::ostream& operator<<(std::ostream& os, const L1GctNullJetFinder& algo);
0028 
0029   /// get input data from sources
0030   void fetchInput() override;
0031 
0032   /// process the data, fill output buffers
0033   void process() override;
0034 
0035 protected:
0036   // Each jetFinder must define the constants as private and copy the
0037   // function definitions below.
0038   unsigned maxRegionsIn() const override { return MAX_REGIONS_IN; }
0039   unsigned centralCol0() const override { return CENTRAL_COL0; }
0040   unsigned nCols() const override { return N_COLS; }
0041 
0042 private:
0043   /// The real jetFinders must define these constants
0044   static const unsigned int MAX_REGIONS_IN;  ///< Dependent on number of rows and columns.
0045   static const unsigned int N_COLS;
0046   static const unsigned int CENTRAL_COL0;
0047 
0048   void findJets();
0049 };
0050 
0051 std::ostream& operator<<(std::ostream& os, const L1GctNullJetFinder& algo);
0052 
0053 #endif /*L1GCTNULLJETFINDER_H_*/