]>
Commit | Line | Data |
---|---|---|
8230f242 | 1 | #ifndef ALITRDV1_H |
2 | #define ALITRDV1_H | |
3da30618 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
030b4415 | 8 | //////////////////////////////////////////////////////////////////////////// |
9 | // // | |
10 | // Manager and hits classes for set: TRD version 1 // | |
11 | // // | |
12 | //////////////////////////////////////////////////////////////////////////// | |
5c7f4665 | 13 | |
14 | // Energy spectrum of the delta-rays | |
15 | Double_t Ermilova(Double_t *x, Double_t *par); | |
a328fff9 | 16 | Double_t IntSpecGeant(Double_t *x, Double_t *par); |
851d3db9 | 17 | |
851d3db9 | 18 | #include "AliTRD.h" |
5c7f4665 | 19 | |
793ff80c | 20 | class TF1; |
c4214bc0 | 21 | class TTree; |
22 | class TFile; | |
030b4415 | 23 | |
793ff80c | 24 | class AliTRDsim; |
25 | ||
851d3db9 | 26 | //_____________________________________________________________________________ |
fe4da5cc | 27 | class AliTRDv1 : public AliTRD { |
28 | ||
851d3db9 | 29 | public: |
30 | ||
8230f242 | 31 | AliTRDv1(); |
fe4da5cc | 32 | AliTRDv1(const char *name, const char *title); |
dd9a6ee3 | 33 | AliTRDv1(const AliTRDv1 &trd); |
8230f242 | 34 | virtual ~AliTRDv1(); |
dd9a6ee3 | 35 | AliTRDv1 &operator=(const AliTRDv1 &trd); |
8230f242 | 36 | |
030b4415 | 37 | virtual void Copy(TObject &trd) const; |
38 | virtual void Init(); | |
39 | virtual Int_t IsVersion() const { return 1; } | |
40 | ||
f57bb418 | 41 | virtual void AddAlignableVolumes() const; |
030b4415 | 42 | virtual void CreateGeometry(); |
43 | virtual void CreateMaterials(); | |
44 | virtual void CreateTRhit(Int_t det); | |
851d3db9 | 45 | |
030b4415 | 46 | virtual void StepManager(); |
47 | void StepManagerErmilova(); | |
48 | void StepManagerGeant(); | |
49 | void StepManagerFixedStep(); | |
50 | void SelectStepManager(Int_t t); | |
a328fff9 | 51 | |
030b4415 | 52 | void SetStepSize(Double_t s) { fStepSize = s; } |
53 | void SetTR(Bool_t kTRUE) { fTRon = kTRUE; } | |
793ff80c | 54 | |
030b4415 | 55 | Bool_t GetTR() const { return fTRon; } |
56 | AliTRDsim *GetTRDsim() const { return fTR; } | |
851d3db9 | 57 | |
58 | protected: | |
59 | ||
030b4415 | 60 | void *StepManagerEntity(); |
a328fff9 | 61 | |
030b4415 | 62 | Bool_t fTRon; // Switch for TR simulation |
63 | AliTRDsim *fTR; // TR simulator | |
793ff80c | 64 | |
030b4415 | 65 | Int_t fTypeOfStepManager; // Type of Step Manager. |
66 | Double_t fStepSize; // Used for the fixed step size | |
a328fff9 | 67 | |
851d3db9 | 68 | private: |
82bbf98a | 69 | |
030b4415 | 70 | Double_t BetheBloch(Double_t bg); |
71 | Double_t BetheBlochGeant(Double_t bg); | |
c4214bc0 | 72 | |
030b4415 | 73 | TF1 *fDeltaE; // Energy distribution of the delta-electrons (Ermilova) |
74 | TF1 *fDeltaG; // Energy distribution of the | |
75 | ||
76 | Float_t fTrackLength0; // Save the track length at chamber entrance | |
77 | Int_t fPrimaryTrackPid; // Save the id of the primary track | |
bd0f8685 | 78 | |
030b4415 | 79 | ClassDef(AliTRDv1,5) // Transition Radiation Detector version 1 (slow simulator) |
82bbf98a | 80 | |
fe4da5cc | 81 | }; |
82 | ||
83 | #endif |