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