1 #ifndef BSEMCRECURSIVECLUSTERING_HH 2 #define BSEMCRECURSIVECLUSTERING_HH 11 #include "RtypesCore.h" 31 class TMemberInspector;
55 std::vector<BSEmcCluster *>
Clustering(
const std::vector<const BSEmcDigi *> &t_digis);
81 void FillGeoItems(
const std::vector<const BSEmcDigi *> &t_digis);
82 std::vector<std::vector<BSEmcGeoItem *>>
SpatialClustering(
const std::vector<const BSEmcDigi *> &t_digis);
83 std::vector<BSEmcCluster *>
ConvertToCluster(
const std::vector<std::vector<BSEmcGeoItem *>> &t_clusterstubs,
const std::vector<const BSEmcDigi *> &t_digis)
const;
ClassDef(BSEmcRecursiveClustering, 1)
Container for clustering parameter.
void FillGeoItems(const std::vector< const BSEmcDigi *> &t_digis)
virtual void SetupParameters(const PndParameterRegister *t_paramRegister)
Fetch all parameters from the PndParameterRegister.
BSEmcRecursiveClustering()
virtual void SetDetectorName(const std::string &t_detectorName)
Set the Detector name. Important, as most EmcParameter need to know for which detector they need to b...
virtual ~BSEmcRecursiveClustering()
Helper class to calculate the cluster position.
void SetPositionParName(const std::string &t_parName)
std::string fNeighbouringRelationParName
PndContainerI< BSEmcDigi > * fDigiArray
BSEmcGeoNeighbouringRelationPar * fNeighbouringRelationPar
std::string fClusterPropertiesParName
void SetClusteringParName(const std::string &t_parName)
a cluster (group of neighboring crystals) of hit emc crystals
std::string fDigiBranchName
Double_t fDigiEnergyThreshold
std::vector< BSEmcCluster * > Clustering(const std::vector< const BSEmcDigi *> &t_digis)
PndOutputContainerI< BSEmcCluster > * fClusterArray
Convenience object for neighbouring relations used by BSEmcRecursiveClustering.
Container of addresses for data Container used by BSEmcClusteringTask and passed to Clustering Proces...
std::vector< std::vector< BSEmcGeoItem * > > SpatialClustering(const std::vector< const BSEmcDigi *> &t_digis)
represents the reconstructed hit of one emc crystal
std::vector< BSEmcCluster * > ConvertToCluster(const std::vector< std::vector< BSEmcGeoItem *>> &t_clusterstubs, const std::vector< const BSEmcDigi *> &t_digis) const
Double_t fClusterActiveTime
virtual void Process()
The actual data transformation (digitizing, clustering, etc.) should be defined here.
Interface to a datacontainer to be used in PandaROOT.
std::set< BSEmcGeoItem * > fChangedCrystals
virtual void SetData(BSEmcClusteringData *t_data)
Pass the data container ptrs to the process, and store pointers in class members. ...
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.
std::string fClusteringParName
std::unique_ptr< BSEmcEnergyCalculationAlgo > fEnergyProcess
void SetClusterPropertiesParName(const std::string &t_parName)
std::unique_ptr< BSEmcPositionAlgo > fPositionProcess
std::string fPositionParName
std::map< Int_t, std::unique_ptr< BSEmcGeoItem > > fIDToCrystal
void SetNeighbouringRelationParName(const std::string &t_parName)