X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TRD%2FAliTRDv1.h;h=33119763fbd7d67b3d33889cd50da79748f800ee;hb=6cb722cab09c6008e9c0ca1ef42539c36f37fc6b;hp=ef324582300fcf175201055c5edf4cd476c331ec;hpb=8230f242a54d81b01f5a6fe9c900cee395cdaf57;p=u%2Fmrichter%2FAliRoot.git diff --git a/TRD/AliTRDv1.h b/TRD/AliTRDv1.h index ef324582300..33119763fbd 100644 --- a/TRD/AliTRDv1.h +++ b/TRD/AliTRDv1.h @@ -5,17 +5,24 @@ /* $Id$ */ -//////////////////////////////////////////////////////// -// Manager and hits classes for set:TRD version 1 // -//////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +// // +// Manager and hits classes for set: TRD version 1 // +// // +//////////////////////////////////////////////////////////////////////////// // Energy spectrum of the delta-rays Double_t Ermilova(Double_t *x, Double_t *par); +Double_t IntSpecGeant(Double_t *x, Double_t *par); -#include - #include "AliTRD.h" +class TF1; +class TTree; +class TFile; + +class AliTRDsim; + //_____________________________________________________________________________ class AliTRDv1 : public AliTRD { @@ -23,62 +30,53 @@ class AliTRDv1 : public AliTRD { AliTRDv1(); AliTRDv1(const char *name, const char *title); - AliTRDv1(AliTRDv1 &trd); virtual ~AliTRDv1(); - virtual void Copy(AliTRDv1 &trd); - virtual void CreateGeometry(); - virtual void CreateMaterials(); - virtual Int_t IsVersion() const { return 1; }; - virtual void StepManager(); - virtual void Init(); + virtual void Init(); + virtual Int_t IsVersion() const { return 1; } - void SetSensPlane(Int_t iplane = 0); - void SetSensChamber(Int_t ichamber = 0); - void SetSensSector(Int_t isector); - void SetSensSector(Int_t isector, Int_t nsector); + virtual void AddAlignableVolumes() const; + virtual void CreateGeometry(); + virtual void CreateMaterials(); + virtual void CreateTRhit(Int_t det); - Int_t GetSensPlane() { return fSensPlane; }; - Int_t GetSensChamber() { return fSensChamber; }; - Int_t GetSensSector() { return fSensSector; }; - Int_t GetSensSectorRange() { return fSensSectorRange; }; + virtual void StepManager(); + void StepManagerErmilova(); + void StepManagerGeant(); + void StepManagerFixedStep(); + void SelectStepManager(Int_t t); - inline AliTRDv1 &operator=(AliTRDv1 &trd); + void SetStepSize(Double_t s) { fStepSize = s; } + void SetTR(Bool_t) { fTRon = kTRUE; } + + Bool_t GetTR() const { return fTRon; } + AliTRDsim *GetTRDsim() const { return fTR; } protected: - Int_t fIdSens; // Sensitive volume identifier + void *StepManagerEntity(); - Int_t fIdChamber1; // Driftchamber volume identifier - Int_t fIdChamber2; // Driftchamber volume identifier - Int_t fIdChamber3; // Driftchamber volume identifier + Bool_t fTRon; // Switch for TR simulation + AliTRDsim *fTR; // TR simulator - Int_t fSensSelect; // Switch to select only parts of the detector - Int_t fSensPlane; // Sensitive detector plane - Int_t fSensChamber; // Sensitive detector chamber - Int_t fSensSector; // Sensitive detector sector - Int_t fSensSectorRange; // Sensitive detector range + Int_t fTypeOfStepManager; // Type of Step Manager. + Double_t fStepSize; // Used for the fixed step size private: + AliTRDv1(const AliTRDv1 &trd); + AliTRDv1 &operator=(const AliTRDv1 &trd); - virtual Double_t BetheBloch(Double_t bg); + Double_t BetheBloch(Double_t bg); + Double_t BetheBlochGeant(Double_t bg); + + TF1 *fDeltaE; // Energy distribution of the delta-electrons (Ermilova) + TF1 *fDeltaG; // Energy distribution of the - TF1 *fDeltaE; // Energy distribution of the delta-electrons - - ClassDef(AliTRDv1,1) // Transition Radiation Detector version 1 (slow simulator) + Float_t fTrackLength0; // Save the track length at chamber entrance + Int_t fPrimaryTrackPid; // Save the id of the primary track -}; + ClassDef(AliTRDv1,5) // Transition Radiation Detector version 1 (slow simulator) -//_____________________________________________________________________________ -AliTRDv1 &AliTRDv1::operator=(AliTRDv1 &trd) -{ - // - // Assignment operator - // - - if (this != &trd) trd.Copy(*this); - return *this; - -} +}; #endif