ROOT logo
#ifndef ALI_TRD_PREPROCESSOR_H
#define ALI_TRD_PREPROCESSOR_H

/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/* $Id$ */

////////////////////////////////////////////////////////////////////////////
//                                                                        //
// TRD preprocessor for the database SHUTTLE                              //
//                                                                        //
////////////////////////////////////////////////////////////////////////////

#include "AliPreprocessor.h"

class TMap;
class AliTRDCalDCSv2;
class AliTRDCalROC;
class AliTRDCalSingleChamberStatus;

class AliTRDPreprocessor : public AliPreprocessor
{

 public:

  AliTRDPreprocessor(AliShuttleInterface *shuttle);
  AliTRDPreprocessor(const AliTRDPreprocessor &org);
  virtual ~AliTRDPreprocessor();


 protected:

  virtual void    Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
  virtual UInt_t  Process(TMap *dcsAliasMap);

          Bool_t  ExtractHalfChamberStatusDAQ();
          Bool_t  ExtractPedestals();
          Bool_t  ExtractDriftVelocityDAQ();
          Bool_t  ExtractHLT();
          Bool_t  ProcessDCS();
          Bool_t  ProcessDCS(TMap *dcsAliasMap);
	  AliTRDPreprocessor& operator = (const AliTRDPreprocessor& rhs);

 private:
	  
	  AliTRDCalDCSv2* fCalDCSObjSOR;    // calDCS object Start of Run
	  AliTRDCalDCSv2* fCalDCSObjEOR;    // calDCS object End of Run

	  Bool_t  fVdriftHLT;             // HLT Vdrift
	  UInt_t  ProcessDCSConfigData(); // process DCS configuration

	  Bool_t AreThereDataPedestal(const AliTRDCalSingleChamberStatus * const calROCStatus, Bool_t second);
	  void   SetDefaultStatus(AliTRDCalSingleChamberStatus &calROCStatus, Bool_t second);
	  void   SetStatus(AliTRDCalSingleChamberStatus &calROCStatus, AliTRDCalSingleChamberStatus *calROCStatusPrevious,Bool_t second);
	  void   SetDefaultNoise(AliTRDCalROC &calROCNoise, Bool_t second);
	  void   SetNoise(AliTRDCalROC &calROCNoise, AliTRDCalROC *calROCNoisePrevious, Bool_t second);

	  ClassDef(AliTRDPreprocessor,1)          // The SHUTTLE preprocessor for TRD

};
#endif

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