Line data Source code
1 : #ifndef ALITRDCALIBRAMODE_H
2 : #define ALITRDCALIBRAMODE_H
3 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 : /* $Id$ */
7 :
8 : ///////////////////////////////////////////////////////////////////////////////
9 : // //
10 : // TRD calibration class //
11 : // //
12 : ///////////////////////////////////////////////////////////////////////////////
13 :
14 : #ifndef ROOT_TObject
15 : # include <TObject.h>
16 : #endif
17 :
18 : class AliTRDgeometry;
19 :
20 : class AliTRDCalibraMode : public TObject {
21 :
22 : public:
23 :
24 : AliTRDCalibraMode();
25 : AliTRDCalibraMode(const AliTRDCalibraMode &c);
26 : virtual ~AliTRDCalibraMode();
27 0 : AliTRDCalibraMode &operator=(const AliTRDCalibraMode &) { return *this; }
28 :
29 :
30 : Bool_t ModePadFragmentation(Int_t iLayer,Int_t iStack, Int_t iSector, Int_t i);
31 : void ModePadCalibration(Int_t iStack, Int_t i);
32 : void ReconstructionRowPadGroup(Int_t idect, Int_t i);
33 : void CalculXBins(Int_t idect, Int_t i);
34 : void ResetMinMax(Int_t i);
35 :
36 :
37 : //
38 : // Set and Get methods
39 : //
40 :
41 : //Set
42 : void SetNz(Int_t i, Short_t nz);
43 : void SetNrphi(Int_t i, Short_t nrphi);
44 0 : void SetRowMin(Int_t i, Short_t rowmin) { fRowMin[i] = rowmin; }
45 0 : void SetRowMax(Int_t i, Short_t rowmax) { fRowMax[i] = rowmax; }
46 0 : void SetColMin(Int_t i, Short_t colmin) { fColMin[i] = colmin; }
47 0 : void SetColMax(Int_t i, Short_t colmax) { fColMax[i] = colmax; }
48 : void SetDetChamb0(Int_t i);
49 : void SetDetChamb2(Int_t i);
50 :
51 : void SetPerSuperModule(Int_t i);
52 : void SetAllTogether(Int_t i);
53 :
54 :
55 : //Get
56 0 : Short_t GetNz(Int_t i) const { return fNz[i]; }
57 0 : Short_t GetNrphi(Int_t i) const { return fNrphi[i]; }
58 0 : Short_t GetNnZ(Int_t i) const { return fNnZ[i]; }
59 0 : Short_t GetNnRphi(Int_t i) const { return fNnRphi[i]; }
60 0 : Short_t GetNfragZ(Int_t i) const { return fNfragZ[i]; }
61 0 : Short_t GetNfragRphi(Int_t i) const { return fNfragRphi[i]; }
62 0 : Short_t GetRowMin(Int_t i) const { return fRowMin[i]; }
63 0 : Short_t GetRowMax(Int_t i) const { return fRowMax[i]; }
64 0 : Short_t GetColMin(Int_t i) const { return fColMin[i]; }
65 0 : Short_t GetColMax(Int_t i) const { return fColMax[i]; }
66 0 : Int_t GetXbins(Int_t i) const { return fXbins[i]; }
67 0 : Short_t GetDetChamb0(Int_t i) const { return fDetChamb0[i]; }
68 0 : Short_t GetDetChamb2(Int_t i) const { return fDetChamb2[i]; }
69 :
70 :
71 : protected:
72 :
73 : // Geometry
74 : AliTRDgeometry *fGeo; //! The TRD geometry
75 :
76 : Short_t fNz[3]; // Mode of calibration
77 : Short_t fNrphi[3]; // Mode of calibration
78 : Short_t fNnZ[3]; // Number of pad rows in a group
79 : Short_t fNnRphi[3]; // Number of pad cols in a group
80 : Short_t fNfragZ[3]; // Number of pad row group
81 : Short_t fNfragRphi[3]; // Number of pad col group
82 : Short_t fRowMin[3]; // Limits of the group in pad row
83 : Short_t fRowMax[3]; // Limits of the group in pad row
84 : Short_t fColMin[3]; // Limits of the group in pad col
85 : Short_t fColMax[3]; // Limits of the group in pad col
86 : Int_t fXbins[3]; // First Xbins of the detector
87 : Short_t fDetChamb0[3]; // Number of XBins for chamber != 2
88 : Short_t fDetChamb2[3]; // Number of Xbins for chamber 2
89 :
90 : // Some basic geometry function
91 : virtual Int_t GetLayer(Int_t d) const;
92 : virtual Int_t GetStack(Int_t d) const;
93 : virtual Int_t GetSector(Int_t d) const;
94 :
95 48 : ClassDef(AliTRDCalibraMode,2) // TRD Calibration class
96 :
97 : };
98 : #endif
99 :
100 :
|