1b50d3f059535a25ab658488f173c4d9b0f69211
[u/mrichter/AliRoot.git] / TPC / AliTPCPreprocessor.h
1 #ifndef ALI_TPC_PREPROCESSOR_H
2 #define ALI_TPC_PREPROCESSOR_H
3
4 #include "AliPreprocessor.h"
5
6
7 // test preprocessor that writes data to AliTestDataDCS
8
9 class AliTestDataDCS;
10 class AliTPCSensorTempArray;
11 class AliDCSSensorArray;
12 class AliTPCROC;
13 class TEnv;
14
15 class AliTPCPreprocessor : public AliPreprocessor
16 {
17   public:
18     AliTPCPreprocessor(AliShuttleInterface* shuttle);
19     AliTPCPreprocessor(const AliTPCPreprocessor &org);
20     virtual ~AliTPCPreprocessor();
21
22   protected:
23     virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
24     virtual UInt_t Process(TMap* dcsAliasMap);
25     UInt_t  MapTemperature(TMap* dcsAliasMap);
26     UInt_t  MapHighVoltage(TMap* dcsAliasMap);
27     UInt_t  MapGoofie(TMap* dcsAliasMap);
28     UInt_t  ExtractPedestals(Int_t sourceFXS);
29     UInt_t  ExtractPulser(Int_t sourceFXS);
30     UInt_t  ExtractCE(Int_t sourceFXS);
31     UInt_t  ExtractQA(Int_t sourceFXS);
32     UInt_t  ExtractAltro(Int_t sourceFXS);
33     AliTPCPreprocessor& operator = (const AliTPCPreprocessor& rhs);
34
35   private:
36     TEnv                   *fConfEnv;  // Preprocessor configuration map
37     AliTPCSensorTempArray  *fTemp;     // CDB class for temperature sensors
38     AliDCSSensorArray      *fHighVoltage; // DCS high voltage measurements
39     AliDCSSensorArray      *fHighVoltageStat; // DCS high voltage status
40     AliDCSSensorArray      *fGoofie;   // Goofie values from DCS
41     Bool_t                 fConfigOK;  // Identify succesful reading of OCDB Config
42     AliTPCROC              *fROC;      // TPC Read-Out configuration
43
44     ClassDef(AliTPCPreprocessor, 3)
45 };
46
47 #endif