]>
Commit | Line | Data |
---|---|---|
57459306 | 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> | |
a0dbe362 | 17 | #include <TList.h> |
57459306 | 18 | |
57459306 | 19 | class TMap; |
20 | ||
21 | class AliCDBMetaData; | |
4426d64a | 22 | class AliCDBEntry; |
57459306 | 23 | class AliShuttleInterface; |
24 | ||
25 | class AliPreprocessor : public TNamed | |
26 | { | |
27 | public: | |
1b82b32d | 28 | |
a0dbe362 | 29 | enum { kDAQ = 0, kDCS, kHLT }; |
57459306 | 30 | |
31 | AliPreprocessor(const char* detector, AliShuttleInterface* shuttle); | |
32 | virtual ~AliPreprocessor(); | |
33 | ||
84090f85 | 34 | virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime); |
b88146b7 | 35 | virtual UInt_t Process(TMap* dcsAliasMap) = 0; |
9827400b | 36 | |
37 | virtual Bool_t ProcessDCS() { return kTRUE; } | |
a0dbe362 | 38 | Bool_t ProcessRunType(); |
39 | ||
57459306 | 40 | protected: |
eb4a4f5c | 41 | Bool_t Store(const char* pathLevel2, const char* pathLevel3, TObject* object, |
84090f85 | 42 | AliCDBMetaData* metaData, Int_t validityStart = 0, Bool_t validityInfinite = kFALSE); |
eb4a4f5c | 43 | Bool_t StoreReferenceData(const char* pathLevel2, const char* pathLevel3, TObject* object, |
3c78eaa5 | 44 | AliCDBMetaData* metaData); |
9827400b | 45 | Bool_t StoreReferenceFile(const char* localFile, const char* gridFileName); |
bba57327 | 46 | Bool_t StoreRunMetadataFile(const char* localFile, const char* gridFileName); |
9827400b | 47 | |
57459306 | 48 | const char* GetFile(Int_t system, const char* id, const char* source); |
4a33bdd9 | 49 | TList* GetFileSources(Int_t system, const char* id = 0); |
50 | TList* GetFileIDs(Int_t system, const char* source); | |
1b82b32d | 51 | const char* GetRunParameter(const char* param); |
4426d64a | 52 | AliCDBEntry* GetFromOCDB(const char* pathLevel2, const char* pathLevel3); |
5c957e4a | 53 | const char* GetRunType(); |
a53c3f59 | 54 | Bool_t GetHLTStatus(); |
ca8ea066 | 55 | const char* GetTriggerConfiguration(); |
57459306 | 56 | void Log(const char* message); |
f12d42ce | 57 | UInt_t GetStartTimeDCSQuery(); |
58 | UInt_t GetEndTimeDCSQuery(); | |
a0dbe362 | 59 | |
60 | void AddRunType(const char* runType); | |
57459306 | 61 | |
62 | Int_t fRun; // current run | |
63 | UInt_t fStartTime; // starttime of current run | |
64 | UInt_t fEndTime; // endtime of current run | |
65 | ||
66 | private: | |
fe12e09c | 67 | AliPreprocessor(const AliPreprocessor & source); |
68 | AliPreprocessor & operator=(const AliPreprocessor & source); | |
57459306 | 69 | AliShuttleInterface* fShuttle; // link to Shuttle |
a0dbe362 | 70 | |
71 | TList fRunTypes; // list of run types that are processed by this preprocessor | |
57459306 | 72 | |
73 | ClassDef(AliPreprocessor, 0); | |
74 | }; | |
75 | ||
76 | #endif |