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