added prediction processor framework and implementations; moved MUON preprocessors
[u/mrichter/AliRoot.git] / HLT / pendolino / TPC / AliHLTPredictionProcessorTPC.h
1 //-*- Mode: C++ -*-
2 // $Id$
3
4 #ifndef ALIHLTPREDICTIONPROCESSORTPC_H
5 #define ALIHLTPREDICTIONPROCESSORTPC_H
6 //* This file is property of and copyright by the ALICE HLT Project        * 
7 //* ALICE Experiment at CERN, All rights reserved.                         *
8 //* See cxx source for full Copyright notice                               *
9
10 /** @file   AliHLTPredictionProcessorTPC.h
11     @author Haavard Helstrup
12     @date   
13     @brief  
14 */
15
16 #include "AliHLTPredictionProcessorInterface.h"
17 #include "TTree.h"
18 class TMap;
19 class AliHLTDCSArray;
20
21 class TObjArray;
22
23 class AliHLTPredictionProcessorTPC : public AliHLTPredictionProcessorInterface
24 {
25  public:
26    AliHLTPredictionProcessorTPC(const char* detector, 
27                                 AliHLTPendolino* pendolino);
28    virtual ~AliHLTPredictionProcessorTPC();
29    
30    UInt_t makePrediction (Bool_t doPrediction);
31    void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
32    UInt_t Process (TMap* dcsAliasMap);
33    UInt_t ExtractTemperature(TMap* dcsAliasMap);
34    UInt_t GetCurrentTime(TMap* dcsAliasMap, const char* stringId);
35    Float_t GetSensorValue(TMap* dcsAliasMap, const char* stringId);
36    virtual Bool_t ProcessDCS();
37    virtual TMap* produceTestData(TString aliasName = "");
38    
39   private: 
40     Bool_t                 fConfigOK;     // Identify succesful reading of OCDB Config
41     TTree*                 fConfTreeTemp; // TTree holding temperature configuration  
42     TObjArray*             fTemp;         // Array holding temperature readings
43     Bool_t                 fPredict;      // Indicates whether predictions should be made
44     Int_t                  fRun;          // run number
45     UInt_t                 fStartTime;    // start time
46     UInt_t                 fEndTime;      // end time
47
48     AliHLTPredictionProcessorTPC
49              (const AliHLTPredictionProcessorTPC& predictPro); // Disabled Copy Constructor
50
51     AliHLTPredictionProcessorTPC& 
52              operator=(const AliHLTPredictionProcessorTPC& rhs); // Disabled Assignment Operator
53
54
55   ClassDef(AliHLTPredictionProcessorTPC,2)
56 };
57
58 inline Bool_t AliHLTPredictionProcessorTPC::ProcessDCS() {
59         return true;
60 }
61
62 #endif
63