Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-09-07 04:37:37

0001 #ifndef RecoLocalCalo_HGCalRecProducers_HGCalUncalibRecHitRecWorkerWeights_hh
0002 #define RecoLocalCalo_HGCalRecProducers_HGCalUncalibRecHitRecWorkerWeights_hh
0003 
0004 /** \class HGCalUncalibRecHitRecWeightsAlgo
0005  *
0006   *  Template used to produce fast-track HGCAL Reco, weight=1
0007   *
0008   *
0009   *  \author Valeri Andreev
0010   */
0011 
0012 #include "RecoLocalCalo/HGCalRecProducers/interface/HGCalUncalibRecHitWorkerBaseClass.h"
0013 #include "RecoLocalCalo/HGCalRecAlgos/interface/HGCalUncalibRecHitRecWeightsAlgo.h"
0014 #include "DataFormats/HGCDigi/interface/HGCDataFrame.h"
0015 #include "DataFormats/HGCDigi/interface/HGCSample.h"
0016 #include "FWCore/Framework/interface/ESHandle.h"
0017 #include "FWCore/Framework/interface/ConsumesCollector.h"
0018 
0019 namespace edm {
0020   class Event;
0021   class EventSetup;
0022   class ParameterSet;
0023 }  // namespace edm
0024 
0025 class HGCalUncalibRecHitWorkerWeights : public HGCalUncalibRecHitWorkerBaseClass {
0026 public:
0027   HGCalUncalibRecHitWorkerWeights(const edm::ParameterSet&, edm::ConsumesCollector iC, bool useTime);
0028   ~HGCalUncalibRecHitWorkerWeights() override {}
0029 
0030   bool runHGCEE(const edm::ESHandle<HGCalGeometry>& geom,
0031                 const HGCalDigiCollection& digis,
0032                 HGCeeUncalibratedRecHitCollection& result) override;
0033   bool runHGCHEsil(const edm::ESHandle<HGCalGeometry>& geom,
0034                    const HGCalDigiCollection& digis,
0035                    HGChefUncalibratedRecHitCollection& result) override;
0036   bool runHGCHEscint(const edm::ESHandle<HGCalGeometry>& geom,
0037                      const HGCalDigiCollection& digis,
0038                      HGChebUncalibratedRecHitCollection& result) override;
0039   bool runHGCHFNose(const edm::ESHandle<HGCalGeometry>& geom,
0040                     const HGCalDigiCollection& digis,
0041                     HGChfnoseUncalibratedRecHitCollection& result) override;
0042 
0043 protected:
0044   HGCalUncalibRecHitRecWeightsAlgo<HGCalDataFrame> uncalibMaker_ee_;
0045   HGCalUncalibRecHitRecWeightsAlgo<HGCalDataFrame> uncalibMaker_hef_;
0046   HGCalUncalibRecHitRecWeightsAlgo<HGCalDataFrame> uncalibMaker_heb_;
0047   HGCalUncalibRecHitRecWeightsAlgo<HGCalDataFrame> uncalibMaker_hfnose_;
0048 
0049   bool run(const edm::ESHandle<HGCalGeometry>& geom,
0050            const HGCalDigiCollection& digis,
0051            HGCalUncalibRecHitRecWeightsAlgo<HGCalDataFrame>& uncalibMaker,
0052            edm::SortedCollection<HGCUncalibratedRecHit>& result);
0053 };
0054 
0055 #endif