Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:25:52

0001 #ifndef RecoLocalCalo_HGCalRecAlgos_HGCalRecHitAbsAlgo_HH
0002 #define RecoLocalCalo_HGCalRecAlgos_HGCalRecHitAbsAlgo_HH
0003 
0004 /** \class HGCalRecHitAbsAlgo
0005   *  Template algorithm to make rechits from uncalibrated rechits
0006   *
0007   *
0008   *
0009   *  \author Valeri Andreev
0010   */
0011 
0012 #include <vector>
0013 #include "DataFormats/HGCRecHit/interface/HGCRecHit.h"
0014 #include "DataFormats/HGCRecHit/interface/HGCUncalibratedRecHit.h"
0015 #include "RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h"
0016 
0017 class HGCalRecHitAbsAlgo {
0018 public:
0019   /// Constructor
0020   //HGCalRecHitAbsAlgo() { };
0021 
0022   /// Destructor
0023   virtual ~HGCalRecHitAbsAlgo(){};
0024 
0025   inline void set(const CaloGeometry& geom) { rhtools_.setGeometry(geom); }
0026 
0027   /// make rechits from dataframes
0028   virtual void setLayerWeights(const std::vector<float>& weights){};
0029 
0030   virtual void setADCToGeVConstant(const float value) = 0;
0031   virtual HGCRecHit makeRecHit(const HGCUncalibratedRecHit& uncalibRH, const uint32_t& flags) const = 0;
0032 
0033 protected:
0034   hgcal::RecHitTools rhtools_;
0035 };
0036 #endif