Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-06-16 03:20:16

0001 // Original Author: Leonardo Cristella
0002 #ifndef SimCalorimetry_HGCalAssociatorProducers_LCToSimTSAssociatorByEnergyScoreImpl_h
0003 #define SimCalorimetry_HGCalAssociatorProducers_LCToSimTSAssociatorByEnergyScoreImpl_h
0004 
0005 #include <vector>
0006 #include <map>
0007 #include <unordered_map>
0008 #include <memory>  // shared_ptr
0009 
0010 #include "SimDataFormats/Associations/interface/LayerClusterToSimTracksterAssociator.h"
0011 #include "RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h"
0012 
0013 #include "SimDataFormats/CaloAnalysis/interface/CaloParticleFwd.h"
0014 #include "SimDataFormats/Associations/interface/LayerClusterToCaloParticleAssociator.h"
0015 #include "SimDataFormats/CaloAnalysis/interface/SimClusterFwd.h"
0016 #include "SimDataFormats/Associations/interface/LayerClusterToSimClusterAssociator.h"
0017 
0018 namespace edm {
0019   class EDProductGetter;
0020 }
0021 
0022 class LCToSimTSAssociatorByEnergyScoreImpl : public hgcal::LayerClusterToSimTracksterAssociatorBaseImpl {
0023 public:
0024   explicit LCToSimTSAssociatorByEnergyScoreImpl(edm::EDProductGetter const &);
0025 
0026   hgcal::RecoToSimTracksterCollection associateRecoToSim(
0027       const edm::Handle<reco::CaloClusterCollection> &cCH,
0028       const edm::Handle<ticl::TracksterCollection> &sTCH,
0029       const edm::Handle<CaloParticleCollection> &cPCH,
0030       const hgcal::RecoToSimCollection &lCToCPs,
0031       const edm::Handle<SimClusterCollection> &sCCH,
0032       const hgcal::RecoToSimCollectionWithSimClusters &lCToSCs) const override;
0033 
0034   hgcal::SimTracksterToRecoCollection associateSimToReco(
0035       const edm::Handle<reco::CaloClusterCollection> &cCH,
0036       const edm::Handle<ticl::TracksterCollection> &sTCH,
0037       const edm::Handle<CaloParticleCollection> &cPCH,
0038       const hgcal::SimToRecoCollection &cPToLCs,
0039       const edm::Handle<SimClusterCollection> &sCCH,
0040       const hgcal::SimToRecoCollectionWithSimClusters &sCToLCs) const override;
0041 
0042 private:
0043   edm::EDProductGetter const *productGetter_;
0044 };
0045 
0046 #endif