PandaRoot
PndEmcDistributedClustering Class Reference

Task to create clusters from digis. More...

#include <PndEmcDistributedClustering.h>

Inheritance diagram for PndEmcDistributedClustering:

Public Member Functions

 PndEmcDistributedClustering (Int_t verbose=0, Bool_t storeclusters=kTRUE)
 
virtual ~PndEmcDistributedClustering ()
 
virtual InitStatus Init ()
 
virtual void Exec (Option_t *opt)
 
virtual void FinishTask ()
 
void SetStorageOfData (Bool_t val)
 Method to specify whether clusters are stored or not. More...
 
void StoreClusterBaseDigis (Bool_t val=kTRUE)
 Restoring digis makes only sense if reconstruction is done timebased. More...
 
void SetTimebunchCutTime (Double_t time)
 Override EmcRecoPar cluster active time parameter ..to be set in ns!!! More...
 
void SetClusterActiveTime (Double_t dt)
 Set time threshold for separating digis within a timebunch in ns. More...
 
void SetClusterMinimumEnergy (Double_t minE)
 Set minimum cluster energy. More...
 
void EnableRemovalOfLowEnergyClusters (Bool_t enable)
 
void SetPositionMethod (Int_t method)
 
void SetNeighbourMethod (Int_t nbmethod)
 
void SetAutoDetermineTimecuts (Bool_t autodet)
 
void SetFactor (TVector3 *factor)
 

Protected Member Functions

virtual void FinishPreclusters ()
 
void FinishPrecluster (PndEmcCluster *tmpcluster)
 
virtual void FinishClusters ()
 
void FinishCluster (PndEmcCluster *tmpcluster, int)
 
virtual void RemoveLowEnergyClusters ()
 
virtual void MapDistancesToSingleHitClusters ()
 

Detailed Description

Task to create clusters from digis.

This is an alternative to PndEmcMakeCluster, that more closely resembles the design of the readout hardware.

Author
M. Tiemens m.tie.nosp@m.mens.nosp@m.@rug..nosp@m.nl

Definition at line 34 of file PndEmcDistributedClustering.h.

Constructor & Destructor Documentation

◆ PndEmcDistributedClustering()

PndEmcDistributedClustering::PndEmcDistributedClustering ( Int_t  verbose = 0,
Bool_t  storeclusters = kTRUE 
)

◆ ~PndEmcDistributedClustering()

virtual PndEmcDistributedClustering::~PndEmcDistributedClustering ( )
virtual

Member Function Documentation

◆ EnableRemovalOfLowEnergyClusters()

void PndEmcDistributedClustering::EnableRemovalOfLowEnergyClusters ( Bool_t  enable)
inline

Enable/disable removal of low energy clusters. Slows down cluster finding task, but will speed up future processing and reconstruction tasks

Definition at line 67 of file PndEmcDistributedClustering.h.

◆ Exec()

virtual void PndEmcDistributedClustering::Exec ( Option_t *  opt)
virtual

Virtual method Exec

◆ FinishCluster()

void PndEmcDistributedClustering::FinishCluster ( PndEmcCluster tmpcluster,
int   
)
protected

Referenced by SetFactor().

◆ FinishClusters()

virtual void PndEmcDistributedClustering::FinishClusters ( )
protectedvirtual

Referenced by SetFactor().

◆ FinishPrecluster()

void PndEmcDistributedClustering::FinishPrecluster ( PndEmcCluster tmpcluster)
protected

Referenced by SetFactor().

◆ FinishPreclusters()

virtual void PndEmcDistributedClustering::FinishPreclusters ( )
protectedvirtual

Referenced by SetFactor().

◆ FinishTask()

virtual void PndEmcDistributedClustering::FinishTask ( )
virtual

Virtual method Finish Task

◆ Init()

virtual InitStatus PndEmcDistributedClustering::Init ( )
virtual

Virtual method Init

◆ MapDistancesToSingleHitClusters()

virtual void PndEmcDistributedClustering::MapDistancesToSingleHitClusters ( )
protectedvirtual

Referenced by SetFactor().

◆ RemoveLowEnergyClusters()

virtual void PndEmcDistributedClustering::RemoveLowEnergyClusters ( )
protectedvirtual

Referenced by SetFactor().

◆ SetAutoDetermineTimecuts()

void PndEmcDistributedClustering::SetAutoDetermineTimecuts ( Bool_t  autodet)
inline

Definition at line 86 of file PndEmcDistributedClustering.h.

86 {fAutoDetermine = autodet;}

◆ SetClusterActiveTime()

void PndEmcDistributedClustering::SetClusterActiveTime ( Double_t  dt)
inline

Set time threshold for separating digis within a timebunch in ns.

Definition at line 63 of file PndEmcDistributedClustering.h.

63 { fClusterActiveTime = dt; }

◆ SetClusterMinimumEnergy()

void PndEmcDistributedClustering::SetClusterMinimumEnergy ( Double_t  minE)
inline

Set minimum cluster energy.

Definition at line 66 of file PndEmcDistributedClustering.h.

66 { fClusterEnergyCut = minE; }

◆ SetFactor()

void PndEmcDistributedClustering::SetFactor ( TVector3 *  factor)
inline

◆ SetNeighbourMethod()

void PndEmcDistributedClustering::SetNeighbourMethod ( Int_t  nbmethod)
inline

Set cluster neighbour method.

Parameters
nbmethodNeighbour method: 0 = default method (for position, logarithmic weighing; for radius, distance of digi furthest from position) -> use this CIRCLE for neighbour relations), 1 = simplified method (for position, xpos=(xmax+xmin)/2 ypos=(ymax+ymin)/2; for radius, r=max(ysize, xsize) -> use this CIRCLE for neighbour relations), 2 = simplified method (for position, xpos=(xmax+xmin)/2 ypos=(ymax+ymin)/2; for radius, rx=(xmax-xmin)/2, ry=(ymax-ymin)/2 -> use this RECTANGULAR BOX for neighbour relations). 3 = simplified method (for position, xpos=(xmax+xmin)/2 ypos=(ymax+ymin)/2; for radius, r=max(ysize, xsize) -> use this SQUARE BOX for neighbour relations).

Definition at line 78 of file PndEmcDistributedClustering.h.

◆ SetPositionMethod()

void PndEmcDistributedClustering::SetPositionMethod ( Int_t  method)
inline

Set precluster position and radius method.

Parameters
methodPosition and radius method: 0 = default method (for position, logarithmic weighing; for radius, distance of digi furthest from position), 1 = simplified method (for position, xpos=(xmax-xmin)/2 ypos=(ymax-ymin)/2; for radius, r=max(ysize, xsize)) for preclusters only, 2 = simplified method for preclusters and clusters. Using the simplified method is less accurate, but saves a very large amount of resources

Definition at line 71 of file PndEmcDistributedClustering.h.

◆ SetStorageOfData()

void PndEmcDistributedClustering::SetStorageOfData ( Bool_t  val)

Method to specify whether clusters are stored or not.

◆ SetTimebunchCutTime()

void PndEmcDistributedClustering::SetTimebunchCutTime ( Double_t  time)
inline

Override EmcRecoPar cluster active time parameter ..to be set in ns!!!

Definition at line 61 of file PndEmcDistributedClustering.h.

61 { fTimebunchCutTime = time; }

◆ StoreClusterBaseDigis()

void PndEmcDistributedClustering::StoreClusterBaseDigis ( Bool_t  val = kTRUE)
inline

Restoring digis makes only sense if reconstruction is done timebased.

Definition at line 58 of file PndEmcDistributedClustering.h.

58 { fStoreClusterBase = kTRUE; }

The documentation for this class was generated from the following file: