Release version of ITS code
[u/mrichter/AliRoot.git] / ITS / AliITSsimulationSSD.h
1 #ifndef ALIITSSIMULATIONSSD_H
2 #define ALIITSSIMULATIONSSD_H
3
4 #include <TArrayF.h>
5
6 #include "AliITSsimulation.h"
7
8
9 class AliITSdictSSD;
10 class AliITSdcsSSD;
11
12 class AliITSsimulationSSD: public AliITSsimulation {
13
14 public:
15
16   AliITSsimulationSSD() {}
17   AliITSsimulationSSD(AliITSsimulationSSD &source); // copy constructor
18   AliITSsimulationSSD& operator=(AliITSsimulationSSD &source); // operator =
19   AliITSsimulationSSD(AliITSsegmentation *seg, AliITSresponse *resp);
20   virtual ~AliITSsimulationSSD();
21     
22   void DigitiseModule(AliITSmodule *mod, Int_t module, Int_t dummy);  
23   void HitToDigit(Int_t &hit,Int_t idtrack,Int_t nhits,TObjArray *hits);            
24
25   // return the pointer to the signal array of P strip
26   TArrayF* GetSignalP() {return fP;}
27   // return the pointer to the signal array of N strip
28   TArrayF* GetSignalN() {return fN;}
29
30 protected:
31   void  ApplyNoise();
32   void  ApplyCoupling();
33   void  ApplyThreshold();
34   void  ApplyDAQ();
35   
36   Float_t  F(Float_t x, Float_t s); 
37   Float_t  Get2Strip(Int_t flag, Int_t istrip, Float_t x, Float_t z);
38   
39   // Data members 
40   
41 protected:
42   
43   AliITSdcsSSD    *fDCS;
44   Int_t   fNstrips;
45   Float_t fPitch;
46   TArrayF *fN;         // for signal N side
47   TArrayF *fP;         // for signal P side
48   AliITSdictSSD *fTracksP;  //!
49   AliITSdictSSD *fTracksN;  //! 
50   //______________________________________________________________
51   //  
52   // Parameters for simulation
53   //______________________________________________________________
54   Int_t    fSteps;                //Number of steps 
55   
56   ClassDef(AliITSsimulationSSD,1)
57     
58     
59 };
60
61
62 #endif