Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-10-16 05:06:31

0001 // Author: Felice Pantaleo - felice.pantaleo@cern.ch
0002 // Date: 05/2024
0003 
0004 #ifndef __RecoHGCal_TICL_PatternRecognitionbyRecovery_H__
0005 #define __RecoHGCal_TICL_PatternRecognitionbyRecovery_H__
0006 #include <memory>  // unique_ptr
0007 #include "RecoHGCal/TICL/interface/PatternRecognitionAlgoBase.h"
0008 #include "RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h"
0009 
0010 namespace ticl {
0011   template <typename TILES>
0012   class PatternRecognitionbyRecovery final : public PatternRecognitionAlgoBaseT<TILES> {
0013   public:
0014     PatternRecognitionbyRecovery(const edm::ParameterSet& conf, edm::ConsumesCollector);
0015     ~PatternRecognitionbyRecovery() override = default;
0016 
0017     void makeTracksters(const typename PatternRecognitionAlgoBaseT<TILES>::Inputs& input,
0018                         std::vector<Trackster>& result,
0019                         std::unordered_map<int, std::vector<int>>& seedToTracksterAssociation) override;
0020 
0021     void filter(std::vector<Trackster>& output,
0022                 const std::vector<Trackster>& inTracksters,
0023                 const typename PatternRecognitionAlgoBaseT<TILES>::Inputs& input,
0024                 std::unordered_map<int, std::vector<int>>& seedToTracksterAssociation) override;
0025 
0026     static void fillPSetDescription(edm::ParameterSetDescription& iDesc);
0027 
0028   private:
0029     edm::ESGetToken<CaloGeometry, CaloGeometryRecord> caloGeomToken_;
0030     hgcal::RecHitTools rhtools_;
0031   };
0032 
0033 }  // namespace ticl
0034 
0035 #endif  // __RecoHGCal_TICL_PatternRecognitionbyRecovery_H__