]>
Commit | Line | Data |
---|---|---|
f74edaba | 1 | #ifndef ALIPHOSCALIBRATIONDB_H |
2 | #define ALIPHOSCALIBRATIONDB_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 | //*-- Author: D.Peressounko (RRC KI & SUBATECH) | |
11 | ||
12 | ||
13 | // --- ROOT system --- | |
14 | #include "TNamed.h" | |
15 | #include "TArrayF.h" | |
16 | #include "TString.h" | |
17 | ||
18 | // --- Standard library --- | |
19 | ||
20 | // --- AliRoot header files --- | |
21 | class AliPHOSConTableDB ; | |
22 | ||
23 | class AliPHOSCalibrationDB:public TNamed { | |
24 | ||
25 | public: | |
26 | AliPHOSCalibrationDB() ; // ctor | |
90cceaf6 | 27 | AliPHOSCalibrationDB(const char * database) ; |
f74edaba | 28 | virtual ~AliPHOSCalibrationDB() ; // dtor |
29 | ||
30 | //Main method: calibrates if gains are known, otherwise - returns 0 | |
31 | Float_t Calibrate(Int_t amp, Int_t absId)const ; | |
32 | ||
33 | //Read gains of pedestals from ascii file | |
34 | void ReadCalibrationParameters(const char * filename = "gains.dat",Option_t* opt = "gains") ; | |
35 | ||
36 | //Sets the same parameters for all channels | |
37 | void SetAll(Float_t pedestal = 0, Float_t slope = 0.01) ; | |
38 | ||
39 | //To know correspondance when reads list of gains from ascii file | |
40 | void SetConTableDB(AliPHOSConTableDB * ctdb){fctdb = ctdb; } | |
41 | ||
42 | //Set parameters for particlular channel | |
43 | void SetParameters(Int_t AbsId, Float_t pedestal = 0, Float_t slope = 0.01) | |
44 | {if(fPedestals){fPedestals->AddAt(pedestal,AbsId-1) ; fSlopes->AddAt(slope,AbsId-1) ;} } | |
45 | ||
46 | //To be replaced in real DB when updating will really be necessary | |
8c140292 | 47 | void Update(Int_t /*event*/,Int_t /*run*/){} |
f74edaba | 48 | |
49 | AliPHOSCalibrationDB & operator = (const AliPHOSCalibrationDB & ) ; | |
50 | private: | |
51 | Int_t fCurentRun ; //! | |
52 | Int_t fNChannels ; | |
53 | TString fFileName ; | |
54 | TArrayF * fPedestals ; | |
55 | TArrayF * fSlopes ; | |
56 | AliPHOSConTableDB * fctdb ; //! | |
57 | ||
58 | ClassDef(AliPHOSCalibrationDB,1) // description | |
59 | ||
60 | }; | |
61 | ||
62 | #endif // AliPHOSCALIBRATIONDB_H |