]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSsimulationSPDdubna.h
Mostly minor style modifications to be ready for cloning with EMCAL
[u/mrichter/AliRoot.git] / ITS / AliITSsimulationSPDdubna.h
1 #ifndef ALIITSSIMULATIONSPDDUBNA_H
2 #define ALIITSSIMULATIONSPDDUBNA_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 #include "AliITSsimulation.h"
8
9 class AliITSMapA2;
10 class AliITSsegmentation;
11 class AliITSresponse;
12 class AliITSsegmentationSPD;
13 class AliITSresponseSPDdubna;
14 class AliITSmodule;
15
16 //-------------------------------------------------------------------
17
18 class AliITSsimulationSPDdubna : public AliITSsimulation {
19  public:
20     AliITSsimulationSPDdubna();
21     AliITSsimulationSPDdubna(AliITSsegmentation *seg, AliITSresponse *res);
22     virtual ~AliITSsimulationSPDdubna();
23     AliITSsimulationSPDdubna(const AliITSsimulationSPDdubna &source); // copy constructor
24     AliITSsimulationSPDdubna& operator=(const AliITSsimulationSPDdubna &source); // ass. operator
25
26     void InitSimulationModule(Int_t module, Int_t event);
27     void SDigitiseModule(AliITSmodule *mod, Int_t mask, Int_t event);
28     void WriteSDigits(AliITSpList *pList);
29     void FinishSDigitiseModule();
30     void SDigitsToDigits(Int_t module, AliITSpList *pList);
31     void DigitiseModule(AliITSmodule *mod,Int_t module,Int_t dummy);
32     void UpdateMapSignal(Int_t i, Int_t j, Int_t trk, Int_t ht,
33                          Int_t module, Double_t signal, AliITSpList *pList);
34     void UpdateMapNoise(Int_t ix, Int_t iz, Int_t module,
35                         Double_t sig, Float_t noise, AliITSpList *pList);
36     void HitToDigit(AliITSmodule *mod,Int_t module,Int_t dummy);
37     void HitToSDigit(AliITSmodule *mod, Int_t module, Int_t dummy,
38                      AliITSpList *pList);
39     void HitToSDigitOld(AliITSmodule *mod, Int_t module, Int_t dummy,
40                         AliITSpList *pList);
41     void ChargeToSignal(AliITSpList *pList);
42     void CreateHistograms();
43     void ResetHistograms();
44     TObjArray*  GetHistArray() {// get hist array
45         return fHis;}
46
47  private:
48     void SpreadCharge(Double_t x0,Double_t y0,Double_t z0,Int_t ix0,Int_t iz0,
49                       Double_t el,Double_t sig,Int_t t,Int_t ti,Int_t hi,
50                       Int_t mod);
51     AliITSsegmentationSPD* GetSeg(){ // Return pointer to Segmentation class
52         return (AliITSsegmentationSPD*)fSegmentation;}
53     AliITSresponseSPDdubna* GetResp(){ // Return pointer to Responce class
54         return (AliITSresponseSPDdubna*)fResponse;}
55
56     AliITSMapA2  *fMapA2;        //! MapA2
57     Float_t      fNoise;         //! Noise
58     Float_t      fBaseline;      //! Baseline
59     Int_t        fNPixelsX;      //! NPixelsX
60     Int_t        fNPixelsZ;      //! NPixelsZ
61     TObjArray    *fHis;          //! just in case for histogramming
62
63     ClassDef(AliITSsimulationSPDdubna,1)  // Simulation of SPD clusters
64 };
65 #endif