Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-03-05 03:57:50

0001 // Author: Swagata Mukherjee
0002 
0003 #ifndef RecoHGCal_TICL_SeedingRegionByL1_h
0004 #define RecoHGCal_TICL_SeedingRegionByL1_h
0005 #include <memory>
0006 #include <string>
0007 
0008 #include "DataFormats/L1TCorrelator/interface/TkEm.h"
0009 #include "DataFormats/L1TCorrelator/interface/TkEmFwd.h"
0010 #include "FWCore/Framework/interface/ConsumesCollector.h"
0011 #include "FWCore/Framework/interface/ESHandle.h"
0012 #include "FWCore/Framework/interface/Event.h"
0013 #include "FWCore/Framework/interface/Frameworkfwd.h"
0014 #include "FWCore/Framework/interface/MakerMacros.h"
0015 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0016 #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h"
0017 #include "FWCore/ParameterSet/interface/ParameterSetDescription.h"
0018 #include "FWCore/Utilities/interface/ESGetToken.h"
0019 #include "RecoHGCal/TICL/plugins/SeedingRegionAlgoBase.h"
0020 
0021 namespace ticl {
0022   class SeedingRegionByL1 final : public SeedingRegionAlgoBase {
0023   public:
0024     SeedingRegionByL1(const edm::ParameterSet& conf, edm::ConsumesCollector& sumes);
0025 
0026     void initialize(const edm::EventSetup& es) override{};
0027     void makeRegions(const edm::Event& ev, const edm::EventSetup& es, std::vector<TICLSeedingRegion>& result) override;
0028     static void fillPSetDescription(edm::ParameterSetDescription& desc);
0029 
0030   private:
0031     edm::EDGetTokenT<std::vector<l1t::TkEm>> l1TkEmsToken_;
0032     int algoVerbosity_ = 0;
0033     double minPt_;                        // minimum pT of L1 TkEm objects
0034     double minAbsEta_;                    // minimum |eta| of L1 TkEm objects
0035     double maxAbsEta_;                    // maximum |eta| of L1 TkEm objects
0036     std::vector<double> endcapScalings_;  // pT scaling factors for endcap
0037     int quality_;                         // hwQual
0038 
0039     double tkEmOfflineEt(double et) const;
0040   };
0041 }  // namespace ticl
0042 #endif