]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDCommonParam.h
add dimuon trigger efficiency
[u/mrichter/AliRoot.git] / TRD / AliTRDCommonParam.h
CommitLineData
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
16class AliTRDpadPlane;
17
18class 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
32 virtual void SetExB(Int_t exbOn = 1) { fExBOn = exbOn; };
33
34 virtual void SetPadResponse(Int_t prfOn = 1) { fPRFOn = prfOn; };
35
36 Float_t GetField() const { return fField; };
37
38 Bool_t ExBOn() const { return fExBOn; };
39
40 Bool_t PRFOn() const { return fPRFOn; };
3551db50 41
42 virtual AliTRDpadPlane *GetPadPlane(Int_t p, Int_t c) const;
43 Int_t GetRowMax(Int_t p, Int_t c, Int_t /*s*/) const;
44 Int_t GetColMax(Int_t p) const;
45 Double_t GetRow0(Int_t p, Int_t c, Int_t /*s*/) const;
46 Double_t GetCol0(Int_t p) const;
47
48 protected:
49 static AliTRDCommonParam* fgInstance; // Instance of this class (singleton implementation)
50 static Bool_t fgTerminated; // Defines if this class has already been terminated and therefore does not return instances in GetInstance anymore
51
52 void Init();
3551db50 53
54 Float_t fField; // Magnetic field
55
56 Int_t fExBOn; // Switch for the ExB effects
3551db50 57 Int_t fPRFOn; // Switch for the pad response
3551db50 58
59 TObjArray *fPadPlaneArray; // Array of pad plane objects
60
61 private:
62 // this is a singleton, constructor is private!
63 AliTRDCommonParam();
64 ~AliTRDCommonParam();
65
66 ClassDef(AliTRDCommonParam, 0)
67};
68
69#endif