X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TRD%2FAliTRD.h;h=36c1f6f7d8c214d64d0455f4a670efbcad296808;hb=05118fd59ab840b539ed5f958c74ed06bf2cf5fd;hp=a7d926478c2818da674a266923b03bdb49857464;hpb=dd9a6ee39f5186d4da36d64c766a9b9517f52743;p=u%2Fmrichter%2FAliRoot.git diff --git a/TRD/AliTRD.h b/TRD/AliTRD.h index a7d926478c2..36c1f6f7d8c 100644 --- a/TRD/AliTRD.h +++ b/TRD/AliTRD.h @@ -8,14 +8,18 @@ //////////////////////////////////////////////// // Manager and hits classes for set: TRD // //////////////////////////////////////////////// - -#include "AliRun.h" + #include "AliDetector.h" -#include "AliTRDhit.h" -#include "AliDigit.h" -#include "AliTRDconst.h" -#include "AliTRDgeometry.h" +class TFile; + +class AliRun; +class AliDigit; + +class AliTRDhit; +class AliTRDsim; +class AliTRDgeometry; +class AliTRDdataArrayI; //_____________________________________________________________________________ class AliTRD : public AliDetector { @@ -29,51 +33,72 @@ class AliTRD : public AliDetector { AliTRD &operator=(const AliTRD &trd); - virtual void AddHit(Int_t track, Int_t *det, Float_t *hits); + virtual void AddHit(Int_t track, Int_t det, Float_t *hits, Int_t q); virtual void AddDigit(Int_t *digits, Int_t *amp); - virtual void AddRecPoint(Float_t *pos, Int_t *digits - , Int_t det, Float_t amp); + virtual void AddCluster(Float_t *pos, Int_t *digits + , Int_t det, Float_t amp, Int_t *tracks + , Float_t sigmaY2, Int_t iType); virtual void BuildGeometry(); virtual void Copy(TObject &trd); virtual void CreateGeometry(); virtual void CreateMaterials(); virtual void DrawModule(); Int_t DistancetoPrimitive(Int_t px, Int_t py); - TObjArray *RecPoints() { return fRecPoints; }; + virtual void LoadPoints(Int_t track); + TObjArray *RecPoints() const { return fRecPoints; }; virtual void Init(); virtual Int_t IsVersion() const = 0; - virtual void MakeBranch(Option_t* option); + virtual void MakeBranch(Option_t* option, const char *file=0); + virtual void ResetDigits(); virtual void ResetRecPoints(); virtual void StepManager() = 0; virtual void SetTreeAddress(); virtual void SetGasMix(Int_t imix = 0); virtual void SetHits() {}; - virtual void SetPHOShole() { fGeometry->SetPHOShole(); }; - virtual void SetRICHhole() { fGeometry->SetRICHhole(); }; + virtual void SetPHOShole(); + virtual void SetRICHhole(); + virtual void SetDrawTR(Int_t idraw = 1) { fDrawTR = idraw; }; + virtual void SetDisplayType(Int_t type = 0) { fDisplayType = type; }; - AliTRDgeometry *GetGeometry() { return fGeometry; }; + AliTRDgeometry *GetGeometry() const { return fGeometry; }; virtual void SetSensChamber(Int_t ichamber) = 0; virtual void SetSensPlane(Int_t iplane) = 0; virtual void SetSensSector(Int_t isector) = 0; virtual void SetSensSector(Int_t isector, Int_t nsector) = 0; - virtual Int_t GetSensChamber() = 0; - virtual Int_t GetSensPlane() = 0; - virtual Int_t GetSensSector() = 0; - virtual Int_t GetSensSectorRange() = 0; + virtual Int_t GetSensChamber() const = 0; + virtual Int_t GetSensPlane() const = 0; + virtual Int_t GetSensSector() const = 0; + virtual Int_t GetSensSectorRange() const = 0; + + virtual void Hits2Digits(); + virtual void Hits2SDigits(); + virtual void SDigits2Digits(); + + virtual AliTRDsim *CreateTR() = 0; + virtual AliTRDsim *GetTR() const = 0; protected: - Int_t fGasMix; // Gas mixture. 0: Xe/Isobutane 1: Xe/CO2 + Int_t fGasMix; // Gas mixture. 0: Xe/Isobutane 1: Xe/CO2 + + AliTRDgeometry *fGeometry; // The TRD geometry + + TObjArray *fRecPoints; // Array of reconstructed points / cluster + Int_t fNRecPoints; //! Number of reconstructed points / cluster + + Float_t fGasDensity; // The density of the drift gas + Float_t fFoilDensity; // The density of the entrance window foil - AliTRDgeometry *fGeometry; // The TRD geometry + Int_t fDrawTR; // Switches marking the TR photons in the display + Int_t fDisplayType; // Display type (0: normal, 1: detailed) - TObjArray *fRecPoints; // Array of reconstructed points - Int_t fNRecPoints; //! Number of reconstructed points + AliTRDdataArrayI *fDigitsArray; //! Digits array + AliTRDdataArrayI *fDictionaryArray[3]; //! Dictionary array - ClassDef(AliTRD,1) // Transition Radiation Detector base class + ClassDef(AliTRD,3) // Transition Radiation Detector base class };