]>
Commit | Line | Data |
---|---|---|
3551db50 | 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 */ | |
5 | ||
6 | /////////////////////////////////////////////////////////////////////////////// | |
7 | // // | |
8 | // Class containing constant common parameters // | |
9 | // // | |
10 | /////////////////////////////////////////////////////////////////////////////// | |
11 | ||
12 | /* $Id$ */ | |
13 | ||
14 | #include "TObject.h" | |
15 | ||
16 | class AliTRDpadPlane; | |
17 | ||
18 | class AliTRDCommonParam : public TObject | |
19 | { | |
20 | public: | |
21 | static AliTRDCommonParam* Instance(); | |
22 | static void Terminate(); | |
23 | ||
24 | enum { kNplan = 6, kNcham = 5, kNsect = 18, kNdet = 540 }; | |
25 | ||
26 | AliTRDCommonParam(const AliTRDCommonParam &p); | |
27 | AliTRDCommonParam &operator=(const AliTRDCommonParam &p); | |
28 | virtual void Copy(TObject &p) const; | |
29 | ||
30 | void SetField(Float_t field) { fField = field; }; | |
31 | ||
cc7cef99 | 32 | void SetExB(Int_t exbOn = 1) { fExBOn = exbOn; }; |
3551db50 | 33 | |
34 | Float_t GetField() const { return fField; }; | |
35 | ||
36 | Bool_t ExBOn() const { return fExBOn; }; | |
37 | ||
cc7cef99 | 38 | AliTRDpadPlane *GetPadPlane(Int_t p, Int_t c) const; |
3551db50 | 39 | Int_t GetRowMax(Int_t p, Int_t c, Int_t /*s*/) const; |
40 | Int_t GetColMax(Int_t p) const; | |
41 | Double_t GetRow0(Int_t p, Int_t c, Int_t /*s*/) const; | |
42 | Double_t GetCol0(Int_t p) const; | |
43 | ||
44 | protected: | |
45 | static AliTRDCommonParam* fgInstance; // Instance of this class (singleton implementation) | |
46 | static Bool_t fgTerminated; // Defines if this class has already been terminated and therefore does not return instances in GetInstance anymore | |
47 | ||
48 | void Init(); | |
3551db50 | 49 | |
50 | Float_t fField; // Magnetic field | |
51 | ||
52 | Int_t fExBOn; // Switch for the ExB effects | |
3551db50 | 53 | |
cc7cef99 | 54 | TObjArray *fPadPlaneArray; //! Array of pad plane objects |
3551db50 | 55 | |
56 | private: | |
57 | // this is a singleton, constructor is private! | |
58 | AliTRDCommonParam(); | |
cc7cef99 | 59 | virtual ~AliTRDCommonParam(); |
3551db50 | 60 | |
cc7cef99 | 61 | ClassDef(AliTRDCommonParam, 1) |
3551db50 | 62 | }; |
63 | ||
64 | #endif |