13 #ifndef BSEMCCLUSTERINGPROCESS_HH 14 #define BSEMCCLUSTERINGPROCESS_HH 22 #include "RtypesCore.h" 40 class TMemberInspector;
41 struct BSEmcClusteringData;
72 virtual void SetDetectorName(
const std::string &t_detectorName) ;
76 virtual void Process() ;
77 std::vector<BSEmcCluster *> Clustering(
const std::vector<const BSEmcDigi *> &t_digis);
88 std::string fClusteringParName{
""};
89 std::string fClusterPropertiesParName{
""};
90 std::string fPositionParName{
""};
91 std::string fNeighbouringRelationParName{
""};
92 std::string fDigiBranchName{
""};
93 Double_t fClusterActiveTime{-1};
94 Double_t fDigiEnergyThreshold{-1};
96 TString fDigiBranchname{
""};
97 TString fClusterBranchname{
""};
102 std::vector<DigiClusteringCandidate> fDigiCandidates{};
104 Int_t fNDigisPassed{-1};
105 std::vector<std::pair<Int_t, Int_t>> fClusterNumbersForSameCluster{};
111 void CreateClusterableDigiCandidates(
const std::vector<const BSEmcDigi *> &t_digis);
112 void FindNeighboursOfEveryDigi();
113 Bool_t AreDigisNeighbours(Int_t t_digi1, Int_t t_digi2)
const;
114 void PrimaryClustering();
115 void SecondaryClustering();
116 void CleanUpClusterNumbering();
117 std::vector<BSEmcCluster *> CreateEmcCluster();
Container for clustering parameter.
void SetClusteringParName(const std::string &t_parName)
void SetDigiBranchName(const TString &t_branchname)
void SetClusterBranchName(const TString &t_branchname)
Helper class to calculate the cluster position.
void SetNeighbouringRelationParName(const std::string &t_parName)
std::vector< Int_t > Neighbours
a cluster (group of neighboring crystals) of hit emc crystals
void SetPositionParName(const std::string &t_parName)
void SetClusterPropertiesParName(const std::string &t_parName)
represents the reconstructed hit of one emc crystal
Interface to a datacontainer to be used in PandaROOT.
Helper class to calculate the Energies of a cluster.
Helper class to indirect the Parameter fetching via the FairRuntimeDb.
Neigbouring Relations based on a list of detectorIds.
represents a reconstructed (splitted) emc cluster
Rewritten version of old PndEmcMakeCluster algorithm for easier understanding and debugging...