]>
Commit | Line | Data |
---|---|---|
b0f5e3fc | 1 | #ifndef ALIITSCLUSTERFINDERSSD_H |
2 | #define ALIITSCLUSTERFINDERSSD_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
b0f5e3fc | 6 | #include <TMath.h> |
b0f5e3fc | 7 | #include "AliITSClusterFinder.h" |
8 | ||
eb08b98f | 9 | class TArrayI; |
e8189707 | 10 | class AliITSclusterSSD; |
11 | class AliITSpackageSSD; | |
12 | ||
b0f5e3fc | 13 | class AliITSClusterFinderSSD: public AliITSClusterFinder |
14 | { | |
15 | ||
16 | public: | |
17 | ||
eb08b98f | 18 | AliITSClusterFinderSSD(AliITSsegmentation *seg, TClonesArray *digits); |
b0f5e3fc | 19 | |
20 | virtual ~AliITSClusterFinderSSD(); | |
21 | ||
22 | ||
fd61217e | 23 | void FindRawClusters(); |
b0f5e3fc | 24 | |
fd61217e | 25 | /* |
766ef0c8 | 26 | void SetAlpha1(Float_t a) {fAlpha1 =a;} |
27 | void SetAlpha2(Float_t a) {fAlpha2 =a;} | |
28 | void SetAlpha3(Float_t a) {fAlpha3 =a;} | |
fd61217e | 29 | */ |
b0f5e3fc | 30 | protected: |
31 | ||
32 | void InitReconstruction(); | |
33 | Bool_t CreateNewRecPoint(Float_t P, Float_t dP, Float_t N, Float_t dN, | |
34 | Float_t Sig,Float_t dSig, | |
35 | AliITSclusterSSD *clusterP, AliITSclusterSSD *clusterN, | |
36 | Stat_t prob); | |
b0f5e3fc | 37 | |
38 | AliITSclusterSSD* GetPSideCluster(Int_t idx); | |
39 | AliITSclusterSSD* GetNSideCluster(Int_t idx); | |
40 | AliITSclusterSSD* GetCluster(Int_t idx, Bool_t side); | |
41 | ||
b0f5e3fc | 42 | void FindNeighbouringDigits(); |
43 | void SeparateOverlappedClusters(); | |
44 | void SplitCluster(TArrayI *list, Int_t nsplits, Int_t index, Bool_t side); | |
45 | Int_t SortDigitsP(Int_t start, Int_t end); | |
46 | Int_t SortDigitsN(Int_t start, Int_t end); | |
47 | void FillDigitsIndex(); | |
48 | void SortDigits(); | |
49 | void FillClIndexArrays(Int_t* arrayP, Int_t *arrayN); | |
50 | void SortClusters(Int_t* arrayP, Int_t *arrayN); | |
51 | Int_t SortClustersP(Int_t start, Int_t end,Int_t *array); | |
52 | Int_t SortClustersN(Int_t start, Int_t end,Int_t *array); | |
b0f5e3fc | 53 | void ClustersToPackages(); |
b0f5e3fc | 54 | |
55 | Int_t GetDiff(Float_t *retx, Float_t *rety) {return 0;} | |
56 | ||
57 | void CalcStepFactor(Float_t Psteo, Float_t Nsteo ); | |
58 | ||
b0f5e3fc | 59 | Bool_t GetCrossing(Float_t &x, Float_t &z); //x, y of strips crossing |
60 | void GetCrossingError(Float_t&, Float_t&); //x, y of strips crossing errors | |
61 | ||
62 | // Data memebers | |
63 | ||
46019b87 | 64 | AliITS *fITS; //!Pointer to AliITS object |
b0f5e3fc | 65 | |
46019b87 | 66 | TClonesArray *fClusterP; //! |
67 | Int_t fNClusterP; //!Number of P side clusters in the array | |
b0f5e3fc | 68 | |
46019b87 | 69 | TClonesArray *fClusterN; //!Number of N side clusters in the array |
70 | Int_t fNClusterN; //! | |
b0f5e3fc | 71 | |
46019b87 | 72 | TClonesArray *fPackages; //!packages |
73 | Int_t fNPackages; //! | |
b0f5e3fc | 74 | |
46019b87 | 75 | TArrayI *fDigitsIndexP; //!Digits on P side |
76 | Int_t fNDigitsP; //!Number of Digits on P side | |
b0f5e3fc | 77 | |
46019b87 | 78 | TArrayI *fDigitsIndexN; //!Digits on N side |
79 | Int_t fNDigitsN; //!Number of Digits on N side | |
b0f5e3fc | 80 | |
81 | ||
46019b87 | 82 | Float_t fPitch; //!Strip pitch |
83 | Float_t fTanP; //!Pside stereo angle tangent | |
84 | Float_t fTanN; //!Nside stereo angle tangent | |
b0f5e3fc | 85 | |
86 | /*************************************************/ | |
87 | /** parameters for reconstruction ****/ | |
88 | /** to be tune when slow simulation raliable ****/ | |
89 | /*************************************************/ | |
90 | ||
fd61217e | 91 | //Float_t fAlpha1; //! |
92 | //Float_t fAlpha2; //! | |
93 | //Float_t fAlpha3; //! | |
46019b87 | 94 | Float_t fPNsignalRatio; //! |
e8189707 | 95 | |
b0f5e3fc | 96 | |
46019b87 | 97 | static const Bool_t fgkSIDEP; //! |
98 | static const Bool_t fgkSIDEN; //! | |
f1c1b286 | 99 | |
be33dccb | 100 | |
46019b87 | 101 | Int_t fSFF; //!forward stepping factor |
102 | Int_t fSFB; //!backward stepping factor | |
b0f5e3fc | 103 | |
104 | public: | |
105 | ClassDef(AliITSClusterFinderSSD, 1) //Class for clustering and reconstruction of space points in SSDs | |
106 | ||
107 | }; | |
108 | ||
109 | ||
110 | #endif |