]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDv1.h
Initial version
[u/mrichter/AliRoot.git] / TRD / AliTRDv1.h
index ef324582300fcf175201055c5edf4cd476c331ec..c69cfd6476b4295947026f6a695ab4646ca26b9f 100644 (file)
 // Energy spectrum of the delta-rays 
 Double_t Ermilova(Double_t *x, Double_t *par);
  
-#include <TF1.h> 
-
 #include "AliTRD.h"
 
+class TF1;
+
+class AliTRDsim;
+
 //_____________________________________________________________________________
 class AliTRDv1 : public AliTRD {
 
@@ -23,27 +25,31 @@ class AliTRDv1 : public AliTRD {
 
   AliTRDv1();
   AliTRDv1(const char *name, const char *title);
-  AliTRDv1(AliTRDv1 &trd);
+  AliTRDv1(const AliTRDv1 &trd);
   virtual ~AliTRDv1();
+  AliTRDv1 &operator=(const AliTRDv1 &trd);
 
-  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       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);
+          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);
 
-          Int_t   GetSensPlane()       { return fSensPlane;       };
-          Int_t   GetSensChamber()     { return fSensChamber;     };
-          Int_t   GetSensSector()      { return fSensSector;      };
-          Int_t   GetSensSectorRange() { return fSensSectorRange; };
+          AliTRDsim *CreateTR();
 
-  inline  AliTRDv1 &operator=(AliTRDv1 &trd);
+          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:
 
@@ -59,6 +65,8 @@ class AliTRDv1 : public AliTRD {
   Int_t        fSensSector;             // Sensitive detector sector 
   Int_t        fSensSectorRange;        // Sensitive detector range
 
+  AliTRDsim   *fTR;                     // TR simulator
+
  private:
 
   virtual Double_t BetheBloch(Double_t bg);
@@ -69,16 +77,4 @@ class AliTRDv1 : public AliTRD {
 
 };
 
-//_____________________________________________________________________________
-AliTRDv1 &AliTRDv1::operator=(AliTRDv1 &trd)
-{
-  //
-  // Assignment operator
-  //
-
-  if (this != &trd) trd.Copy(*this);
-  return *this;
-
-}
-
 #endif