StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StSvtClusterFinder.hh
1 /***************************************************************************
2  *
3  * $Id: StSvtClusterFinder.hh,v 1.4 2005/07/23 03:37:33 perev Exp $
4  *
5  * Author:
6  ***************************************************************************
7  *
8  * Description: SVT Cluster Finder Class
9  *
10  ***************************************************************************
11  *
12  * $Log: StSvtClusterFinder.hh,v $
13  * Revision 1.4 2005/07/23 03:37:33 perev
14  * IdTruth + Cleanup
15  *
16  * Revision 1.3 2003/01/28 20:28:28 munhoz
17  * new filters for clusters
18  *
19  * Revision 1.2 2000/10/31 16:19:43 caines
20  * Improved speed of zeroing arrays
21  *
22  * Revision 1.1 2000/07/06 03:50:33 caines
23  * First version of cluster finder and fitter
24  *
25  **************************************************************************/
26 
27 
28 #ifndef STSVTCLUSTERFINDER_HH
29 #define STSVTCLUSTERFINDER_HH
30 
31 class StSvtHybridData;
32 class StSequence;
33 
35 {
36 public:
40 
41  void ClusterFinder();
42  void getClusterMembers(int& mAnode, int &mSeq);
43  void ResetContainers();
44  int getSeqOnRight(int mAnode, int mSeqStart, int mSeqEnd, int& memCount,int& newmem);
45  int getSeqOnLeft(int mAnode, int& breakAn,int mSeqStart, int mSeqEnd, int& memCount,int& newmem);
46  void setHybridPointer(StSvtHybridData* hdata);
47  int ClusterMembers(int clu); //returns the number of members in a cluster
48  void SetHybIndex(int index);
49  int ClusterIndex(); //returns the number of clusters
50  int ClusterListAnode(int clu,int mem); //returns anode index on anodelist
51  int ClusterActualAnode(int mAn); //returns actual anode on hybrid corresponding to a member
52  int ClusterSequence(int clu,int mem); //returns sequence corres[onding to a memeber
53 
54  StSvtHybridData* hybdata;
55  StSequence* sequence;
56 
57 
58 private:
59 
60  int mNumOfAnodes;
61  int mSequence;
62  int mNumOfClusters;
63  int mNumOfCluMem[30720]; // array of clusters
64  int mNumSeq[240];
65  int cluIndex;
66  int m_hybIndex;
67  int mCluster[8000][500]; //array for storing anode and sequence of members
68  int mSeqFlag[240][128];
69  int mContainer1[500]; //temporary container for new members
70  int mContainer2[500]; //temporary container for new members
71 
72  int* mAnolist;
73 
74  //ClassDef(StSvtClusterFinder,1)
75 
76  };
77 
78 #endif