CMS 3D CMS Logo

HGCalHistoClusteringImpl.h
Go to the documentation of this file.
1 #ifndef __L1Trigger_L1THGCal_HGCalHistoClusteringImpl_h__
2 #define __L1Trigger_L1THGCal_HGCalHistoClusteringImpl_h__
3 
8 
13 
15 public:
17 
18  void eventSetup(const edm::EventSetup& es) {
20  shape_.eventSetup(es);
23  throw cms::Exception("Configuration")
24  << "The per-layer dR values go up to " << (dr_byLayer_coefficientA_.size() - 1) << "(A) and "
25  << (dr_byLayer_coefficientB_.size() - 1) << "(B), while layers go up to " << triggerTools_.lastLayerBH()
26  << "\n";
27  }
28  }
29 
30  float dR(const l1t::HGCalCluster& clu, const GlobalPoint& seed) const;
31 
32  void clusterizeHisto(const std::vector<edm::Ptr<l1t::HGCalCluster>>& clustersPtr,
33  const std::vector<std::pair<GlobalPoint, double>>& seedPositionsEnergy,
34  const HGCalTriggerGeometryBase& triggerGeometry,
35  l1t::HGCalMulticlusterBxCollection& multiclusters) const;
36 
37 private:
39 
40  std::vector<l1t::HGCalMulticluster> clusterSeedMulticluster(
41  const std::vector<edm::Ptr<l1t::HGCalCluster>>& clustersPtrs,
42  const std::vector<std::pair<GlobalPoint, double>>& seeds) const;
43 
44  void finalizeClusters(std::vector<l1t::HGCalMulticluster>&,
46  const HGCalTriggerGeometryBase&) const;
47 
48  double dr_;
49  std::vector<double> dr_byLayer_coefficientA_;
50  std::vector<double> dr_byLayer_coefficientB_;
52 
55 
58  std::unique_ptr<HGCalTriggerClusterIdentificationBase> id_;
59 
60  static constexpr double kMidRadius_ = 2.3;
61 };
62 
63 #endif
void eventSetup(const edm::EventSetup &es)
void eventSetup(const edm::EventSetup &)
void finalizeClusters(std::vector< l1t::HGCalMulticluster > &, l1t::HGCalMulticlusterBxCollection &, const HGCalTriggerGeometryBase &) const
std::unique_ptr< HGCalTriggerClusterIdentificationBase > id_
std::vector< l1t::HGCalMulticluster > clusterSeedMulticluster(const std::vector< edm::Ptr< l1t::HGCalCluster >> &clustersPtrs, const std::vector< std::pair< GlobalPoint, double >> &seeds) const
void clusterizeHisto(const std::vector< edm::Ptr< l1t::HGCalCluster >> &clustersPtr, const std::vector< std::pair< GlobalPoint, double >> &seedPositionsEnergy, const HGCalTriggerGeometryBase &triggerGeometry, l1t::HGCalMulticlusterBxCollection &multiclusters) const
void eventSetup(const edm::EventSetup &es)
std::vector< double > dr_byLayer_coefficientB_
unsigned lastLayerBH() const
float dR(const l1t::HGCalCluster &clu, const GlobalPoint &seed) const
HGCalHistoClusteringImpl(const edm::ParameterSet &conf)
ClusterAssociationStrategy cluster_association_strategy_
#define constexpr
std::vector< double > dr_byLayer_coefficientA_