]>
Commit | Line | Data |
---|---|---|
5253c153 | 1 | #ifndef ALIMUONPEDESTAL_H |
2 | #define ALIMUONPEDESTAL_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | // $Id$ | |
8 | ||
9 | /// \ingroup calib | |
10 | /// \class AliMUONPedestal | |
11 | /// \brief Implementation of the pedestal computing | |
12 | /// | |
13 | // Author Alberto Baldisseri, JL Charvet | |
14 | ||
15 | #include <TObject.h> | |
16 | ||
17 | #include "AliMpConstants.h" | |
18 | ||
19 | class AliMUONVStore; | |
20 | ||
21 | class TTimeStamp; | |
5253c153 | 22 | |
23 | // global variables | |
24 | const Int_t kNChannels = AliMpConstants::ManuNofChannels(); | |
25 | const Int_t kADCMax = 4095; | |
26 | ||
27 | class AliMUONPedestal : public TObject | |
28 | { | |
29 | public: | |
30 | AliMUONPedestal(); | |
31 | virtual ~AliMUONPedestal(); | |
32 | ||
5431405e | 33 | /// return the number of events |
5253c153 | 34 | void SetAliNEvents(Int_t events) {fNEvents = events;} |
5431405e | 35 | /// return the Run number |
5253c153 | 36 | void SetAliRunNumber(Int_t run) {fRunNumber = run;} |
5431405e | 37 | /// return the total number of channels (or pads) |
5253c153 | 38 | void SetAliNChannel(Int_t nch) {fNChannel = nch;} |
5431405e | 39 | /// output .log file of DAs |
5253c153 | 40 | void SetAlifilcout(ofstream* stream) {fFilcout = stream;} |
5431405e | 41 | /// return date and time |
5253c153 | 42 | TTimeStamp* GetDate() {return fDate;} |
5431405e | 43 | /// Count parity errors per Buspatch |
a54854fc | 44 | AliMUONVStore* GetErrorBuspatchTable() {return fErrorBuspatchTable;} |
5431405e | 45 | /// return the name of DAPedestal .root file |
5253c153 | 46 | Char_t* GetHistoFileName() {return fHistoFileName;} |
1b15b395 | 47 | /// load MuonTrk configuration from ascii dbfile |
48 | void Load_config(char* dbfile); | |
49 | /// sum pedestal values for mean and sigma determination | |
5253c153 | 50 | void MakePed(Int_t bp,Int_t manu,Int_t ch,Int_t charge); |
5253c153 | 51 | |
1b15b395 | 52 | /// set config flag |
53 | void SetconfigDA(Int_t ind) {fConfig = ind;} | |
5431405e | 54 | /// set specific DA prefixname |
5253c153 | 55 | void SetprefixDA(char* folder) {sprintf(fprefixDA,"%s",folder);} |
5431405e | 56 | /// set the index of calibration runs |
5253c153 | 57 | void SetAliIndex(Int_t ind) {fIndex = ind;} |
dbbb2c64 | 58 | /// Compute the pedestal data (mean, sigma) |
59 | void Finalize(); | |
60 | /// Create String to be put into file or AMORE DB | |
61 | void MakeASCIIoutput(ostream& out) const; | |
62 | /// Fill Histograms | |
63 | void MakeControlHistos(); | |
5253c153 | 64 | |
65 | protected: | |
5431405e | 66 | Int_t fN; ///< |
67 | Int_t fNEvents; ///< Number of events | |
68 | Int_t fRunNumber; ///< run number | |
69 | Int_t fNChannel; ///< Nb of channels (pads) | |
70 | Int_t fNManu; ///< Nb of Manu | |
1b15b395 | 71 | Int_t fNManu_config; ///< Nb of Manu in the current detector configuration |
72 | Int_t fConfig; ///< flag 1(0) for reading(or not) configuration ascii file | |
a54854fc | 73 | AliMUONVStore* fErrorBuspatchTable; ///< Table for buspatches with parity errors |
74 | AliMUONVStore* fManuBuspatchTable; ///< Occupancy rate for each (buspatch, manu) | |
1b15b395 | 75 | AliMUONVStore* fManuBPoutofconfigTable; ///< (buspatch, manu) out of config |
5431405e | 76 | |
77 | TTimeStamp* fDate; ///< date | |
78 | ofstream* fFilcout; ///< .log output file | |
79 | Char_t fHistoFileName[256]; ///< .root histo file | |
80 | AliMUONVStore* fPedestalStore; ///< | |
81 | Int_t fIndex; ///< calibration run index | |
82 | Char_t fprefixDA[256]; ///< specific DA prefixname | |
5253c153 | 83 | |
84 | private: | |
85 | /// Not implemented | |
86 | AliMUONPedestal(const AliMUONPedestal& rhs); | |
87 | /// Not implemented | |
88 | AliMUONPedestal& operator = (const AliMUONPedestal& rhs); | |
89 | ||
d9e6dc5e | 90 | ClassDef(AliMUONPedestal,3) // |
5253c153 | 91 | }; |
92 | ||
93 | #endif |