]> git.uio.no Git - u/mrichter/AliRoot.git/blob - FMD/AliFMDPreprocessor.h
Added the offline trigger functions for use with the first physics.
[u/mrichter/AliRoot.git] / FMD / AliFMDPreprocessor.h
1 #ifndef ALI_FMD_PREPROCESSOR_H
2 #define ALI_FMD_PREPRECESSOR_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights
4  * reserved. 
5  *
6  * See cxx source for full Copyright notice                               
7  */
8 //___________________________________________________________________
9 // The class processes data points from DCS (via Amanada), and DAQ DA
10 // files (via FXS) to make calibration data for the FMD.
11 // More to come. 
12
13
14 #include "AliPreprocessor.h"
15 #ifndef ALIFMDUSHORTMAP_H
16 # include <AliFMDUShortMap.h>
17 #endif
18 typedef AliFMDUShortMap AliFMDCalibZeroSuppression;
19 class AliFMDCalibPedestal;
20 class AliFMDCalibGain;
21 class AliFMDCalibSampleRate;
22 class AliFMDCalibStripRange;
23 class AliCDBEntry;
24 class TList;
25
26 //___________________________________________________________________
27 /** The class processes data points from DCS (via Amanada), and DAQ DA
28     files (via FXS) to make calibration data for the FMD.
29
30     Data points: 
31        *  Nothing yet. 
32
33     DAQ FXS file:
34        * pedestals - a (ASCII) Comma Separated Values files with the
35                      fields 
36                           rcu    DDL number 
37                           board   FEC board number 
38                           chip    ALTRO chip number on FEC
39                           channel ALTRO channel number
40                           strip   VA1 strip number
41                           sample  Sample number
42                           ped     Mean of ADC spectra
43                           noise   Spread of ADC spectra
44                           mu      Mean of Gaussian fit to ADC spectra
45                           sigma   Variance of Gaussian fit to ADC spectra
46                           chi2    Chi^2 per degrees of freedom of fit
47        * Gains     - a (ASCII) Comma Separated Values files with the
48                      fields 
49                           rcu    DDL number 
50                           board   FEC board number 
51                           chip    ALTRO chip number on FEC
52                           channel ALTRO channel number
53                           strip   VA1 strip number
54                           gain    Slope of gain
55                           error   Error on gain
56                           chi2    Chi^2 per degrees of freedom of fit
57 */
58 class AliFMDPreprocessor: public AliPreprocessor 
59 {
60 public:
61   /** Constructor */
62   AliFMDPreprocessor(): AliPreprocessor("FMD",0) {}
63   /** Constructor 
64       @param shuttle Shuttle */
65   AliFMDPreprocessor(AliShuttleInterface* shuttle) ;
66   
67   
68   /** Destructor */
69   virtual ~AliFMDPreprocessor() {}
70   /** Get an entry from OCDB */ 
71   AliCDBEntry* GetFromCDB(const char* second, const char* third);
72 protected:
73   /** Get the pedestal calibrations 
74       @param list List of files */
75   AliFMDCalibPedestal*   GetPedestalCalibration(TList* list);
76   /** Get the gain calibrations 
77       @param list List of files */
78   AliFMDCalibGain*       GetGainCalibration(TList*);
79   /** Get info calibrations. 
80       @param files List of files. 
81       @param s     On return, newly allocated object 
82       @param r     On return, newly allocated object 
83       @param z     On return, newly allocated object 
84       @return kTRUE on success */
85   Bool_t GetInfoCalibration(TList* files, 
86                             AliFMDCalibSampleRate*&      s,
87                             AliFMDCalibStripRange*&      r, 
88                             AliFMDCalibZeroSuppression*& z);
89   /** Convinience function 
90       @param list On return, list of files. 
91       @param system Alice system (DAQ, DCS, ...)
92       @param id     File id
93       @return kTRUE on success. */
94   Bool_t GetAndCheckFileSources(TList*& list, Int_t system, const char* id);
95   
96   /** Entry method 
97       @param dcsAliasMap Map of DCS data points */
98   virtual UInt_t Process(TMap* dcsAliasMap);
99 private:
100   ClassDef(AliFMDPreprocessor, 1)
101 };
102
103 #endif
104 //____________________________________________________________________
105 //
106 // Local Variables:
107 //   mode: C++
108 // End:
109 //
110 // EOF
111 //