1 #ifndef AliTRDCOMMONPARAM_H
2 #define AliTRDCOMMONPARAM_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 ///////////////////////////////////////////////////////////////////////////////
8 // Class containing constant common parameters //
10 ///////////////////////////////////////////////////////////////////////////////
18 class AliTRDCommonParam : public TObject
23 enum { kNplan = 6, kNcham = 5, kNsect = 18, kNdet = 540 };
25 AliTRDCommonParam(const AliTRDCommonParam &p);
26 AliTRDCommonParam &operator=(const AliTRDCommonParam &p);
27 virtual ~AliTRDCommonParam();
29 static AliTRDCommonParam *Instance();
30 static void Terminate();
32 virtual void Copy(TObject &p) const;
34 void SetExB(Int_t exbOn = 1) { fExBOn = exbOn; }
35 void SetSamplingFrequency(Float_t freq) { fSamplingFrequency = freq; }
37 Bool_t ExBOn() const { return fExBOn; }
39 AliTRDpadPlane *GetPadPlane(Int_t p, Int_t c) const;
40 Int_t GetRowMax(Int_t p, Int_t c, Int_t /*s*/) const;
41 Int_t GetColMax(Int_t p) const;
42 Double_t GetRow0(Int_t p, Int_t c, Int_t /*s*/) const;
43 Double_t GetCol0(Int_t p) const;
44 Float_t GetSamplingFrequency() const { return fSamplingFrequency; }
48 static AliTRDCommonParam *fgInstance; // Instance of this class (singleton implementation)
49 static Bool_t fgTerminated; // Defines if this class has already been terminated
53 Int_t fExBOn; // Switch for the ExB effects
55 Float_t fSamplingFrequency; // Sampling Frequency in MHz
57 TObjArray *fPadPlaneArray; //! Array of pad plane objects
61 // This is a singleton, constructor is private!
64 ClassDef(AliTRDCommonParam,3) // The constant parameters common to simulation and reconstruction