]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDv1.h
- Return from Gstpar if material is not used.
[u/mrichter/AliRoot.git] / TRD / AliTRDv1.h
CommitLineData
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
fe4da5cc 8////////////////////////////////////////////////////////
9// Manager and hits classes for set:TRD version 1 //
10////////////////////////////////////////////////////////
5c7f4665 11
12// Energy spectrum of the delta-rays
13Double_t Ermilova(Double_t *x, Double_t *par);
a328fff9 14Double_t IntSpecGeant(Double_t *x, Double_t *par);
851d3db9 15
851d3db9 16#include "AliTRD.h"
5c7f4665 17
793ff80c 18class TF1;
19
20class AliTRDsim;
21
851d3db9 22//_____________________________________________________________________________
fe4da5cc 23class AliTRDv1 : public AliTRD {
24
851d3db9 25 public:
26
8230f242 27 AliTRDv1();
fe4da5cc 28 AliTRDv1(const char *name, const char *title);
dd9a6ee3 29 AliTRDv1(const AliTRDv1 &trd);
8230f242 30 virtual ~AliTRDv1();
dd9a6ee3 31 AliTRDv1 &operator=(const AliTRDv1 &trd);
8230f242 32
793ff80c 33 virtual void Copy(TObject &trd);
34 virtual void CreateGeometry();
35 virtual void CreateMaterials();
36 virtual void CreateTRhit(Int_t det);
37 virtual Int_t IsVersion() const { return 1; };
38 virtual void StepManager();
39 virtual void Init();
851d3db9 40
a328fff9 41 void StepManagerErmilova();
42 void StepManagerGeant();
43 void StepManagerFixedStep();
44 void SelectStepManager(Int_t t);
45 void SetStepSize(Double_t s) { fStepSize = s; };
46
793ff80c 47 void SetSensPlane(Int_t iplane = 0);
48 void SetSensChamber(Int_t ichamber = 0);
49 void SetSensSector(Int_t isector);
50 void SetSensSector(Int_t isector, Int_t nsector);
851d3db9 51
793ff80c 52 AliTRDsim *CreateTR();
53
54 Int_t GetSensPlane() const { return fSensPlane; };
55 Int_t GetSensChamber() const { return fSensChamber; };
56 Int_t GetSensSector() const { return fSensSector; };
57 Int_t GetSensSectorRange() const { return fSensSectorRange; };
58
59 AliTRDsim *GetTR() const { return fTR; };
851d3db9 60
61 protected:
62
a328fff9 63 void *StepManagerEntity();
64
5c7f4665 65 Int_t fSensSelect; // Switch to select only parts of the detector
66 Int_t fSensPlane; // Sensitive detector plane
67 Int_t fSensChamber; // Sensitive detector chamber
9d0b222b 68 Int_t fSensSector; // Sensitive detector sector
69 Int_t fSensSectorRange; // Sensitive detector range
5c7f4665 70
793ff80c 71 AliTRDsim *fTR; // TR simulator
72
a328fff9 73 Int_t fTypeOfStepManager; // Type of Step Manager.
74 Double_t fStepSize; // Used for the fixed step size
75
851d3db9 76 private:
82bbf98a 77
5c7f4665 78 virtual Double_t BetheBloch(Double_t bg);
82bbf98a 79
a328fff9 80 TF1 *fDeltaE; // Energy distribution of the delta-electrons (Ermilova)
81 TF1 *fDeltaG; // for StepManagerGeant
5c7f4665 82
a328fff9 83 ClassDef(AliTRDv1,3) // Transition Radiation Detector version 1 (slow simulator)
82bbf98a 84
fe4da5cc 85};
86
87#endif