]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDv1.h
Class to generate combinations for merging
[u/mrichter/AliRoot.git] / TRD / AliTRDv1.h
index fdaa153aec8ca744673e64742ec4ebdf47ad2b5f..4ea33da7c2e4a82ecc31527169bb33310a3c1b55 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef TRDv1_H
-#define TRDv1_H
+#ifndef ALITRDV1_H
+#define ALITRDV1_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
@@ -8,36 +8,73 @@
 ////////////////////////////////////////////////////////
 //  Manager and hits classes for set:TRD version 1    //
 ////////////////////////////////////////////////////////
+
+// Energy spectrum of the delta-rays 
+Double_t Ermilova(Double_t *x, Double_t *par);
  
 #include "AliTRD.h"
-             
+
+class TF1;
+
+class AliTRDsim;
+
+//_____________________________________________________________________________
 class AliTRDv1 : public AliTRD {
 
-public:
-  AliTRDv1() {}
+ public:
+
+  AliTRDv1();
   AliTRDv1(const char *name, const char *title);
-  virtual      ~AliTRDv1() {}
-  virtual void  CreateGeometry();
-  virtual void  CreateMaterials();
-  virtual Int_t IsVersion() const {return 1;}
-  virtual void  SetHits(Int_t ihit = 1) { fHitsOn = ihit; };
-  virtual void  StepManager();
-  virtual void  Init();
-
-protected:
-  Int_t        fIdSens;     // Sensitive volume identifier
-
-  Int_t        fIdSpace1;   // Spaceframe volume identifier
-  Int_t        fIdSpace2;   // 
-  Int_t        fIdSpace3;   // 
-
-  Int_t        fIdChamber1; // Driftchamber volume identifier
-  Int_t        fIdChamber2; // 
-  Int_t        fIdChamber3; // 
-
-  Int_t        fHitsOn;     // Used to switch hits on
-            
-  ClassDef(AliTRDv1,1)      // Transition Radiation Detector version 1
+  AliTRDv1(const AliTRDv1 &trd);
+  virtual ~AliTRDv1();
+  AliTRDv1 &operator=(const AliTRDv1 &trd);
+
+  virtual void       Copy(TObject &trd);
+  virtual void       CreateGeometry();
+  virtual void       CreateMaterials();
+  virtual void       CreateTRhit(Int_t det);
+  virtual Int_t      IsVersion() const          { return 1; };
+  virtual void       StepManager();
+  virtual void       Init();
+
+          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);
+
+          AliTRDsim *CreateTR();
+
+          Int_t      GetSensPlane() const       { return fSensPlane;       };
+          Int_t      GetSensChamber() const     { return fSensChamber;     };
+          Int_t      GetSensSector() const      { return fSensSector;      };
+          Int_t      GetSensSectorRange() const { return fSensSectorRange; };
+
+          AliTRDsim *GetTR() const              { return fTR;              };
+
+ protected:
+
+  Int_t        fIdSensDr;               // Sensitive volume identifier (drift region)
+  Int_t        fIdSensAm;               // Sensitive volume identifier (amplification region)
+
+  Int_t        fIdChamber1;             // Driftchamber volume identifier
+  Int_t        fIdChamber2;             // Driftchamber volume identifier 
+  Int_t        fIdChamber3;             // Driftchamber volume identifier 
+
+  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
+
+  AliTRDsim   *fTR;                     // TR simulator
+
+ private:
+
+  virtual Double_t BetheBloch(Double_t bg);
+
+  TF1         *fDeltaE;                 // Energy distribution of the delta-electrons
+   
+  ClassDef(AliTRDv1,1)                  // Transition Radiation Detector version 1 (slow simulator)
 
 };