]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - FMD/AliFMDPreprocessor.h
Fix for null fMCevent pointer
[u/mrichter/AliRoot.git] / FMD / AliFMDPreprocessor.h
... / ...
CommitLineData
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#ifndef ALIFMDBOOLMAP_H
19# include <AliFMDBoolMap.h>
20#endif
21typedef AliFMDUShortMap AliFMDCalibZeroSuppression;
22typedef AliFMDBoolMap AliFMDCalibDeadMap;
23class AliFMDCalibPedestal;
24class AliFMDCalibGain;
25class AliFMDCalibSampleRate;
26class AliFMDCalibStripRange;
27class AliCDBEntry;
28class TList;
29
30//___________________________________________________________________
31/** The class processes data points from DCS (via Amanada), and DAQ DA
32 files (via FXS) to make calibration data for the FMD.
33
34 Data points:
35 * Nothing yet.
36
37 DAQ FXS file:
38 * pedestals - a (ASCII) Comma Separated Values files with the
39 fields
40 rcu DDL number
41 board FEC board number
42 chip ALTRO chip number on FEC
43 channel ALTRO channel number
44 strip VA1 strip number
45 sample Sample number
46 ped Mean of ADC spectra
47 noise Spread of ADC spectra
48 mu Mean of Gaussian fit to ADC spectra
49 sigma Variance of Gaussian fit to ADC spectra
50 chi2 Chi^2 per degrees of freedom of fit
51 * Gains - a (ASCII) Comma Separated Values files with the
52 fields
53 rcu DDL number
54 board FEC board number
55 chip ALTRO chip number on FEC
56 channel ALTRO channel number
57 strip VA1 strip number
58 gain Slope of gain
59 error Error on gain
60 chi2 Chi^2 per degrees of freedom of fit
61*/
62class AliFMDPreprocessor: public AliPreprocessor
63{
64public:
65 /** Constructor */
66 AliFMDPreprocessor(): AliPreprocessor("FMD",0) {}
67 /** Constructor
68 @param shuttle Shuttle */
69 AliFMDPreprocessor(AliShuttleInterface* shuttle) ;
70
71
72 /** Destructor */
73 virtual ~AliFMDPreprocessor() {}
74 /** Get an entry from OCDB */
75 AliCDBEntry* GetFromCDB(const char* second, const char* third);
76protected:
77 /**
78 * Get the pedestal calibrations
79 *
80 * @param list List of files
81 */
82 AliFMDCalibPedestal* GetPedestalCalibration(const TList* list);
83 /**
84 * Get the gain calibrations
85 *
86 * @param list List of files
87 */
88 AliFMDCalibGain* GetGainCalibration(const TList*);
89 /**
90 * Get the dead channels map based on the pedestal
91 * an gain calibration objects.
92 */
93 AliFMDCalibDeadMap* GetDeadChannelMap(AliFMDCalibPedestal* pedcalib,
94 AliFMDCalibGain* gaincalib);
95
96 /** Get info calibrations.
97 @param files List of files.
98 @param s On return, newly allocated object
99 @param r On return, newly allocated object
100 @param z On return, newly allocated object
101 @return kTRUE on success */
102 Bool_t GetInfoCalibration(TList* files,
103 AliFMDCalibSampleRate*& s,
104 AliFMDCalibStripRange*& r,
105 AliFMDCalibZeroSuppression*& z);
106 /** Convinience function
107 @param list On return, list of files.
108 @param system Alice system (DAQ, DCS, ...)
109 @param id File id
110 @return kTRUE on success. */
111 Bool_t GetAndCheckFileSources(TList*& list, Int_t system, const char* id);
112
113 /** Entry method
114 @param dcsAliasMap Map of DCS data points */
115 virtual UInt_t Process(TMap* dcsAliasMap);
116private:
117 ClassDef(AliFMDPreprocessor, 1)
118};
119
120#endif
121//____________________________________________________________________
122//
123// Local Variables:
124// mode: C++
125// End:
126//
127// EOF
128//