]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MFT/AliMFTClusterFinder.h
Adding the new detector MFT (Antonio Uras)
[u/mrichter/AliRoot.git] / MFT / AliMFTClusterFinder.h
1 /* Copyright(c) 2004-2006, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice     */
3
4 //====================================================================================================================================================
5 //
6 //      Class for finding and building the clusters of the ALICE Muon Forward Tracker
7 //
8 //      Contact author: antonio.uras@cern.ch
9 //
10 //====================================================================================================================================================
11
12 #ifndef AliMFTClusterFinder_H
13 #define AliMFTClusterFinder_H
14
15 #include "AliLog.h"
16 #include "TObjArray.h"
17 #include "TClonesArray.h"
18 #include "AliMFTDigit.h"
19 #include "AliMFTCluster.h"
20 #include "AliMFTSegmentation.h"
21 #include "TTree.h"
22 #include "TMath.h"
23
24 //====================================================================================================================================================
25
26 class AliMFTClusterFinder : public TObject {
27
28 public:
29
30   AliMFTClusterFinder();
31   ~AliMFTClusterFinder();
32
33   void Init(Char_t *nameGeomFile);
34   
35   void MakeClusterBranch(TTree *treeCluster);
36   void SetClusterTreeAddress(TTree *treeCluster);
37   void CreateClusters();
38
39   void DigitsToClusters(const TObjArray *pDigitList);
40
41   void StartEvent();
42   void BuildNewCluster(Int_t plane);
43   Bool_t IsCurrentDigitCompatible();
44
45 private:
46  
47   static const Int_t fNMaxDigitsPerCluster = 10;
48   static const Int_t fNMaxPlanes = 20;
49
50   TClonesArray *fClustersPerPlane[fNMaxPlanes];    // ![fNPlanes] list of clusters [per plane]
51
52   TClonesArray *fDigitsInCluster;
53   AliMFTDigit *fCurrentDig;
54
55   AliMFTSegmentation *fSegmentation;
56
57   Int_t fNPlanes;
58
59   AliMFTClusterFinder(const AliMFTClusterFinder &source);
60   AliMFTClusterFinder& operator=(const AliMFTClusterFinder &source);
61
62   ClassDef(AliMFTClusterFinder,1) 
63
64 };
65
66 //====================================================================================================================================================
67
68 #endif