Adding presentation style (T.Kuhr)
[u/mrichter/AliRoot.git] / PMD / AliPMDDigitizer.h
CommitLineData
b2b13ee2 1#ifndef PMDDigitizer_H
2#define PMDDigitizer_H
3//-----------------------------------------------------//
4// //
5// Header File : PMDDigitization.h, Version 00 //
6// //
7// Date : September 20 2002 //
8// //
9//-----------------------------------------------------//
10
11#include <Riostream.h>
12#include <stdlib.h>
13#include <math.h>
14#include <TMath.h>
b2b13ee2 15
16class TClonesArray;
17class TFile;
18
19class TObjArray;
20class TParticle;
21class TTree;
22class TNtuple;
23
24class AliLoader;
25class AliRunLoader;
26class AliRun;
27class AliDetector;
28class AliPMDhit;
29class AliHit;
30class AliHeader;
31
32class AliPMDcell;
33class AliPMDsdigit;
34class AliPMDdigit;
35class AliPMDClustering;
b2b13ee2 36
b2b13ee2 37class AliPMDDigitizer
38{
39 protected:
40 AliRunLoader *fRunLoader;
41 AliRun *gAlice;
42 AliPMDhit *pmdHit; /* Pointer to specific detector hits. */
43 AliDetector *PMD; /* Get pointers to Alice detectors
44 and Hits containers */
45 AliLoader *pmdloader;
46
47 TClonesArray *PMDhits;
48 TObjArray *Particles;
49 TParticle *particle;
50
51 TTree *treeH;
52 TTree *treeS;
53 TTree *treeD;
b2b13ee2 54
55 TClonesArray *fSDigits;
56 TClonesArray *fDigits;
b2b13ee2 57
58 TObjArray *fCell;
59 AliPMDcell *pmdcell;
b2b13ee2 60
61 Int_t fNsdigit;
62 Int_t fNdigit;
63 Int_t fDetNo;
64 Float_t fZPos;
65
8599803d 66 static const Int_t fTotUM = 24;
67 static const Int_t fRow = 48;
68 static const Int_t fCol = 96;
69 Float_t fCPV[fTotUM][fRow][fCol];
70 Float_t fPMD[fTotUM][fRow][fCol];
71 Int_t fPMDCounter[fTotUM][fRow][fCol];
72 Int_t fPMDTrackNo[fTotUM][fRow][fCol];
73 Int_t fCPVTrackNo[fTotUM][fRow][fCol];
b2b13ee2 74
75 public:
76
77 AliPMDDigitizer();
78 virtual ~AliPMDDigitizer();
79
80 void OpengAliceFile(char * /* galice.root */, Option_t * /* option */);
81
82 void Hits2SDigits(Int_t /* ievt */);
83 void Hits2Digits(Int_t /* ievt */);
84 void SDigits2Digits(Int_t /* ievt */);
85 void TrackAssignment2Cell();
86 void MeV2ADC(Float_t /* mev */, Float_t & /* adc */);
87 void AddSDigit(Int_t /* trnumber */, Int_t /* det */, Int_t /* smnumber */,
88 Int_t /* cellnumber */, Float_t /* adc */);
89 void AddDigit(Int_t /* trnumber */, Int_t /* det */, Int_t /* smnumber */,
90 Int_t /* cellnumber */, Float_t /* adc */);
91 Int_t Convert2RealSMNumber(Int_t /* smnumber1 */ );
92 void SetZPosition(Float_t /* zpos */);
93 Float_t GetZPosition() const;
94 void ResetCell();
95 void ResetSDigit();
96 void ResetDigit();
97 void ResetCellADC();
98 void UnLoad(Option_t * /* option */);
99
8599803d 100 ClassDef(AliPMDDigitizer,2)
b2b13ee2 101};
102#endif
103