File indexing completed on 2024-04-06 12:20:38
0001 #ifndef __L1Trigger_L1THGCal_HGCalHistoClusteringImplSA_h__
0002 #define __L1Trigger_L1THGCal_HGCalHistoClusteringImplSA_h__
0003
0004 #include "L1Trigger/L1THGCal/interface/backend/HGCalCluster_SA.h"
0005 #include "L1Trigger/L1THGCal/interface/backend/HGCalSeed_SA.h"
0006 #include "L1Trigger/L1THGCal/interface/backend/HGCalMulticluster_SA.h"
0007 #include "L1Trigger/L1THGCal/interface/backend/HGCalHistoClusteringConfig_SA.h"
0008
0009 #include <string>
0010 #include <vector>
0011 #include <memory>
0012
0013 class HGCalHistoClusteringImplSA {
0014 public:
0015 HGCalHistoClusteringImplSA() = default;
0016 ~HGCalHistoClusteringImplSA() = default;
0017
0018 void runAlgorithm() const;
0019
0020 std::vector<l1thgcfirmware::HGCalMulticluster> clusterSeedMulticluster_SA(
0021 const std::vector<l1thgcfirmware::HGCalCluster>& clusters,
0022 const std::vector<l1thgcfirmware::HGCalSeed>& seeds,
0023 std::vector<l1thgcfirmware::HGCalCluster>& rejected_clusters,
0024 const l1thgcfirmware::ClusterAlgoConfig& configuration) const;
0025
0026 void finalizeClusters_SA(const std::vector<l1thgcfirmware::HGCalMulticluster>&,
0027 const std::vector<l1thgcfirmware::HGCalCluster>&,
0028 std::vector<l1thgcfirmware::HGCalMulticluster>&,
0029 std::vector<l1thgcfirmware::HGCalCluster>&,
0030 const l1thgcfirmware::ClusterAlgoConfig& configuration) const;
0031 };
0032
0033 #endif