ROOT logo
#ifndef ALI_TPC_PREPROCESSOR_H
#define ALI_TPC_PREPROCESSOR_H

#include "AliPreprocessor.h"


// test preprocessor that writes data to AliTestDataDCS

class AliTestDataDCS;
class AliTPCSensorTempArray;
class AliDCSSensorArray;
class AliTPCROC;
class AliTPCCalibRaw;
class TEnv;

class AliTPCPreprocessor : public AliPreprocessor
{
  public:
    AliTPCPreprocessor(AliShuttleInterface* shuttle);
    AliTPCPreprocessor(const AliTPCPreprocessor &org);
    virtual ~AliTPCPreprocessor();

  protected:
    virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
    virtual UInt_t Process(TMap* dcsAliasMap);
    UInt_t  MapTemperature(TMap* dcsAliasMap);
    UInt_t  MapHighVoltage(TMap* dcsAliasMap);
    UInt_t  MapGasComposition(TMap* dcsAliasMap);
    UInt_t  MapGoofie(TMap* dcsAliasMap);
    UInt_t  MapPressure(TMap* dcsAliasMap);
    UInt_t  ExtractPedestals(Int_t sourceFXS);
    UInt_t  ExtractPulser(Int_t sourceFXS);
    UInt_t  ExtractCE(Int_t sourceFXS);
    UInt_t  ExtractQA(Int_t sourceFXS);
    UInt_t  ExtractAltro(Int_t sourceFXS, TMap* dcsAliasMap);
    UInt_t  ExtractRaw(Int_t sourceFXS);
    AliTPCPreprocessor& operator = (const AliTPCPreprocessor& rhs);

  private:
    TEnv                   *fConfEnv;  // Preprocessor configuration map
    AliTPCSensorTempArray  *fTemp;     // CDB class for temperature sensors
    AliDCSSensorArray      *fHighVoltage; // DCS high voltage measurements
    AliDCSSensorArray      *fHighVoltageStat; // DCS high voltage status
    AliDCSSensorArray      *fGoofie;   // Goofie values from DCS
    AliDCSSensorArray      *fPressure;   // Pressure values from DCS
    AliDCSSensorArray      *fGasComposition;   // Gas composition values from DCS
    Bool_t                 fConfigOK;  // Identify succesful reading of OCDB Config
    AliTPCROC              *fROC;      // TPC Read-Out configuration

    ClassDef(AliTPCPreprocessor, 4)
};

#endif
 AliTPCPreprocessor.h:1
 AliTPCPreprocessor.h:2
 AliTPCPreprocessor.h:3
 AliTPCPreprocessor.h:4
 AliTPCPreprocessor.h:5
 AliTPCPreprocessor.h:6
 AliTPCPreprocessor.h:7
 AliTPCPreprocessor.h:8
 AliTPCPreprocessor.h:9
 AliTPCPreprocessor.h:10
 AliTPCPreprocessor.h:11
 AliTPCPreprocessor.h:12
 AliTPCPreprocessor.h:13
 AliTPCPreprocessor.h:14
 AliTPCPreprocessor.h:15
 AliTPCPreprocessor.h:16
 AliTPCPreprocessor.h:17
 AliTPCPreprocessor.h:18
 AliTPCPreprocessor.h:19
 AliTPCPreprocessor.h:20
 AliTPCPreprocessor.h:21
 AliTPCPreprocessor.h:22
 AliTPCPreprocessor.h:23
 AliTPCPreprocessor.h:24
 AliTPCPreprocessor.h:25
 AliTPCPreprocessor.h:26
 AliTPCPreprocessor.h:27
 AliTPCPreprocessor.h:28
 AliTPCPreprocessor.h:29
 AliTPCPreprocessor.h:30
 AliTPCPreprocessor.h:31
 AliTPCPreprocessor.h:32
 AliTPCPreprocessor.h:33
 AliTPCPreprocessor.h:34
 AliTPCPreprocessor.h:35
 AliTPCPreprocessor.h:36
 AliTPCPreprocessor.h:37
 AliTPCPreprocessor.h:38
 AliTPCPreprocessor.h:39
 AliTPCPreprocessor.h:40
 AliTPCPreprocessor.h:41
 AliTPCPreprocessor.h:42
 AliTPCPreprocessor.h:43
 AliTPCPreprocessor.h:44
 AliTPCPreprocessor.h:45
 AliTPCPreprocessor.h:46
 AliTPCPreprocessor.h:47
 AliTPCPreprocessor.h:48
 AliTPCPreprocessor.h:49
 AliTPCPreprocessor.h:50
 AliTPCPreprocessor.h:51
 AliTPCPreprocessor.h:52
 AliTPCPreprocessor.h:53