]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MFT/AliMFTClusterFinder.h
Don't copy MC label for non-MC dataset (missed track category in previous commit)
[u/mrichter/AliRoot.git] / MFT / AliMFTClusterFinder.h
... / ...
CommitLineData
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#include "AliMFTConstants.h"
24#include "TStopwatch.h"
25
26//====================================================================================================================================================
27
28class AliMFTClusterFinder : public TObject {
29
30public:
31
32 AliMFTClusterFinder();
33 ~AliMFTClusterFinder();
34 virtual void Clear(const Option_t* /*opt*/);
35 void Init(const Char_t *nameGeomFile);
36
37 void MakeClusterBranch(TTree *treeCluster);
38 void SetClusterTreeAddress(TTree *treeCluster);
39 void CreateClusters();
40
41 void ApplyMisalignment(Bool_t applyMisalignment) { fApplyMisalignment = applyMisalignment; }
42
43 void DigitsToClusters(const TObjArray *pDigitList);
44
45 void StartEvent();
46
47private:
48
49 static const Int_t fNMaxDigitsPerCluster = AliMFTConstants::fNMaxDigitsPerCluster;
50 static const Int_t fNMaxPlanes = AliMFTConstants::fNMaxPlanes;
51 static const Int_t fNMaxDetElemPerPlane = AliMFTConstants::fNMaxDetElemPerPlane;
52 static const Double_t fCutForAvailableDigits;
53 static const Double_t fCutForAttachingDigits;
54 static const Double_t fMisalignmentMagnitude;
55
56 TClonesArray *fClustersPerPlane[fNMaxPlanes]; //! [fNPlanes] list of clusters [per plane]
57
58 TClonesArray *fDigitsInCluster; //!
59 AliMFTDigit *fCurrentDigit; //!
60 AliMFTCluster *fCurrentCluster; //!
61
62 AliMFTSegmentation *fSegmentation; //!
63
64 Int_t fNPlanes;
65
66 Bool_t fApplyMisalignment; // For MC, waiting for OCDB...
67
68 TStopwatch *fStopWatch; //!
69
70 AliMFTClusterFinder(const AliMFTClusterFinder &source);
71 AliMFTClusterFinder& operator=(const AliMFTClusterFinder &source);
72
73 ClassDef(AliMFTClusterFinder,1)
74
75};
76
77//====================================================================================================================================================
78
79#endif