b0f5e3fc |
1 | #ifndef ALIITSSIMULATIONSSD_H |
2 | #define ALIITSSIMULATIONSSD_H |
3 | |
4 | #include <TArrayF.h> |
5 | |
fd61217e |
6 | #include "AliITSdcsSSD.h" |
7 | //#include "AliITSdictSSD.h" |
b0f5e3fc |
8 | #include "AliITSsimulation.h" |
fd61217e |
9 | #include "AliITSsegmentationSSD.h" |
b0f5e3fc |
10 | |
11 | |
fd61217e |
12 | class AliITSMapA2; |
13 | //class AliITSdictSSD; |
b0f5e3fc |
14 | class AliITSdcsSSD; |
15 | |
16 | class AliITSsimulationSSD: public AliITSsimulation { |
17 | |
18 | public: |
19 | |
20 | AliITSsimulationSSD() {} |
21 | AliITSsimulationSSD(AliITSsimulationSSD &source); // copy constructor |
22 | AliITSsimulationSSD& operator=(AliITSsimulationSSD &source); // operator = |
23 | AliITSsimulationSSD(AliITSsegmentation *seg, AliITSresponse *resp); |
24 | virtual ~AliITSsimulationSSD(); |
25 | |
10b0db9b |
26 | void DigitiseModule(AliITSmodule *mod, Int_t imod, Int_t dummy); |
fd61217e |
27 | //void HitToDigit(Double_t x0, Double_t y0, Double_t z0, |
28 | void HitToDigit(Int_t module, Double_t x0, Double_t y0, Double_t z0, //b.b. |
29 | Double_t x, Double_t y, Double_t z, Double_t de, |
30 | Int_t *indexRange, Bool_t first); |
31 | Int_t NumOfSteps(Double_t x, Double_t y, Double_t z, |
32 | Double_t & dex,Double_t & dey,Double_t & dez); |
33 | void GetList(Int_t track, Float_t **pList, Int_t *IndexRange); |
34 | void ChargeToSignal(Float_t **pList); |
35 | |
36 | //TArrayF* GetSignalP() {return fP;} |
37 | //TArrayF* GetSignalN() {return fN;} |
38 | |
39 | AliITSsegmentationSSD *GetSegmentation() {return (AliITSsegmentationSSD*)fSegmentation;} |
b0f5e3fc |
40 | |
fd61217e |
41 | protected: |
42 | |
43 | void IntegrateGaussian(Int_t k, Double_t par, Double_t av, Double_t sigma, |
44 | Double_t inf, Double_t sup, |
45 | Int_t *indexRange, Bool_t first); |
b0f5e3fc |
46 | void ApplyNoise(); |
47 | void ApplyCoupling(); |
fd61217e |
48 | // void ApplyThreshold(); |
49 | //void ApplyDAQ(); |
b0f5e3fc |
50 | |
fd61217e |
51 | Float_t F(Float_t av, Float_t x, Float_t s); |
52 | // Float_t Get2Strip(Int_t flag, Int_t istrip, Float_t x, Float_t z); |
b0f5e3fc |
53 | |
54 | // Data members |
55 | |
fd61217e |
56 | protected: |
57 | |
58 | AliITSdcsSSD *fDCS; |
59 | Int_t fNstrips; |
60 | Float_t fPitch; |
61 | //TArrayF *fN; // for signal N side |
62 | //TArrayF *fP; // for signal P side |
63 | //AliITSdictSSD *fTracksP; //! |
64 | //AliITSdictSSD *fTracksN; //! |
b0f5e3fc |
65 | |
b0f5e3fc |
66 | //______________________________________________________________ |
67 | // |
68 | // Parameters for simulation |
69 | //______________________________________________________________ |
70 | Int_t fSteps; //Number of steps |
71 | |
fd61217e |
72 | private: |
73 | |
74 | AliITSMapA2 *fMapA2; // MapA2 |
75 | |
b0f5e3fc |
76 | ClassDef(AliITSsimulationSSD,1) |
77 | |
fd61217e |
78 | }; |
b0f5e3fc |
79 | |
80 | |
81 | #endif |