]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliPreprocessor.h
Avoid mixing up trigger and tracks replacing the option "CP" by
[u/mrichter/AliRoot.git] / STEER / AliPreprocessor.h
1 #ifndef ALI_PREPROCESSOR_H
2 #define ALI_PREPROCESSOR_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */
8
9 //
10 // This class is the CDBPreProcessor interface,
11 // supposed to be implemented by any detector
12 // interested in immediate processing of data 
13 // which is retrieved from DCS, DAQ or HLT.
14 //
15
16 #include <TNamed.h>
17
18 class TList;
19 class TMap;
20
21 class AliCDBMetaData;
22 class AliShuttleInterface;
23
24 class AliPreprocessor : public TNamed
25 {
26   public:
27
28     enum { kDAQ, kDCS, kHLT };
29
30     AliPreprocessor(const char* detector, AliShuttleInterface* shuttle);
31     virtual ~AliPreprocessor();
32
33     virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
34     virtual UInt_t Process(TMap* dcsAliasMap) = 0;
35
36   protected:
37     UInt_t Store(const char* pathLevel2, const char* pathLevel3, TObject* object,
38                 AliCDBMetaData* metaData, Int_t validityStart = 0, Bool_t validityInfinite = kFALSE);
39     UInt_t StoreReferenceData(const char* pathLevel2, const char* pathLevel3, TObject* object,
40                 AliCDBMetaData* metaData);
41     const char* GetFile(Int_t system, const char* id, const char* source);
42     TList* GetFileSources(Int_t system, const char* id);
43     const char* GetRunParameter(const char* param);
44     void Log(const char* message);
45
46     Int_t fRun;         // current run
47     UInt_t fStartTime;  // starttime of current run
48     UInt_t fEndTime;    // endtime of current run
49
50   private:
51     AliPreprocessor(const AliPreprocessor & source);
52     AliPreprocessor & operator=(const AliPreprocessor & source);
53     AliShuttleInterface* fShuttle;   // link to Shuttle
54
55     ClassDef(AliPreprocessor, 0);
56 };
57
58 #endif