StRoot
1
|
#include <StFgtSeededClusterAlgo.h>
Public Member Functions | |
virtual Int_t | doClustering (const StFgtCollection &fgtCollection, StFgtStripCollection &strips, StFgtHitCollection &clusters) |
the main function, using a collection of strips tht fired to build clusters of neighbouring strips More... | |
virtual Int_t | Init () |
virtual Int_t | Finish () |
virtual void | setJumpSingleStrip (Bool_t jump) |
void | setThreshold2AddStrip (Float_t v) |
void | setDb (StFgtDb *pDb) |
Protected Member Functions | |
Int_t | addStrips2Cluster (StFgtHit *clus, StFgtStrip **itSeed, StFgtStrip **itVecBegin, StFgtStrip **itVecEnd, Bool_t direction, Int_t sidedSize) |
migrated to A2C maker More... | |
Bool_t | isSameCluster (StFgtStrip **itSeed, StFgtStrip **nextStrip) |
function to check if the strip belongs to the cluster. If it returns false we stop adding strips to the cluster | |
void | FillClusterInfo (StFgtHit *cluster, StFgtStripCollection &allStrips) |
fill in cluster info like charge from the strips More... | |
void | doStripFit (void *stripsT) |
Float_t | doClusterShapeFit (void *stripsT) |
void | setNumAdditionalStrips (Int_t numStrips) |
Protected Attributes | |
Int_t | numAdditionalStrips |
StFgtDb * | mDb |
int | mMaxTimeBin |
This class implements the IClusterAlgo interface, in particular the doClustering function. The implemented algo (simple) agregates all strips that are above threshold to clusters. It respects the fact that at the inner radius only every second P-Strip exist. There is a cutoff on the maximum numbers of strips per cluster as a safety in case of noisy data.
Copy constructor and assignment operator omitted deliberately
Definition at line 85 of file StFgtSeededClusterAlgo.h.
|
protected |
migrated to A2C maker
function to add strips to clusters, used recursively
doesn't matter if it is adjacent... dead strips are deleted, so the the next strip can be further away and there is no telling how far.
this only goes on for a maximum distance of two, and has to be same layer and even as well
if the last add was successful and the cluster is not too big, go to next one...
Definition at line 723 of file StFgtSeededClusterAlgo.cxx.
References isSameCluster().
Referenced by doClustering().
|
virtual |
the main function, using a collection of strips tht fired to build clusters of neighbouring strips
main interface to the clustering.
run over all strips, find seeds, use those to start clusters
this code only ensures that we don't swallow other seeds, however it does not prevent that a close seed eats into the cluster we are building but since we check for rising strips, the next seed is a true seed of its own,
check for ringing around cluster
this might not be such a good idea since it is not taking into account geo ids. If we run zs, this will not work—>fixed
Implements StFgtIClusterAlgo.
Definition at line 854 of file StFgtSeededClusterAlgo.cxx.
References addStrips2Cluster(), FillClusterInfo(), and kStOk.
|
protected |
fill in cluster info like charge from the strips
phi strip in r <20
begin fitting
let's keep it though...
cout <<"disc: " <<disc << endl;
Definition at line 312 of file StFgtSeededClusterAlgo.cxx.
Referenced by doClustering().