]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliPreprocessor.h
- Implementing functions for the GRP preprocessor to retrieve DA output files from...
[u/mrichter/AliRoot.git] / STEER / AliPreprocessor.h
index 20bcb6878fc8a7b800b7d3a3e5e743c5dc93ead8..f8bcbf9c12bd749dca2047743045a71b1f1a3070 100644 (file)
 //
 
 #include <TNamed.h>
+#include <TList.h>
 
-class TList;
 class TMap;
 
 class AliCDBMetaData;
+class AliCDBEntry;
 class AliShuttleInterface;
 
 class AliPreprocessor : public TNamed
 {
   public:
-    enum { kDAQ, kDCS, kHLT };
+
+    enum { kDAQ = 0, kDCS, kHLT };
 
     AliPreprocessor(const char* detector, AliShuttleInterface* shuttle);
     virtual ~AliPreprocessor();
 
     virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
     virtual UInt_t Process(TMap* dcsAliasMap) = 0;
-
+   
+    virtual Bool_t ProcessDCS() { return kTRUE; }
+    Bool_t ProcessRunType();
+  
   protected:
-    UInt_t Store(const char* pathLevel2, const char* pathLevel3, TObject* object,
-               AliCDBMetaData* metaData, Int_t validityStart = 0, Bool_t validityInfinite = kFALSE);
-    UInt_t StoreReferenceData(const char* pathLevel2, const char* pathLevel3, TObject* object,
+    Bool_t Store(const char* pathLevel2, const char* pathLevel3, TObject* object,
                AliCDBMetaData* metaData, Int_t validityStart = 0, Bool_t validityInfinite = kFALSE);
+    Bool_t StoreReferenceData(const char* pathLevel2, const char* pathLevel3, TObject* object,
+               AliCDBMetaData* metaData);
+    Bool_t StoreReferenceFile(const char* localFile, const char* gridFileName);
+    Bool_t StoreRunMetadataFile(const char* localFile, const char* gridFileName);
+    
     const char* GetFile(Int_t system, const char* id, const char* source);
-    TList* GetFileSources(Int_t system, const char* id);
-    void Log(const char* message);
+    TList* GetFileSources(Int_t system, const char* id = 0);
+    const char* GetForeignFile(const char* detector, Int_t system, const char* id, const char* source);
+    TList* GetForeignFileSources(const char* detector, Int_t system, const char* id);
+    TList* GetFileIDs(Int_t system, const char* source);
+    const char* GetRunParameter(const char* param);
+    AliCDBEntry* GetFromOCDB(const char* pathLevel2, const char* pathLevel3);
+    const char* GetRunType();
+    Bool_t GetHLTStatus();
+    const char* GetTriggerConfiguration();
+    const char* GetCTPTimeParams();
+    const char* GetTriggerDetectorMask();
+    void Log(const char* message, UInt_t level=3);
+    UInt_t GetStartTimeDCSQuery();
+    UInt_t GetEndTimeDCSQuery();
+    
+    void AddRunType(const char* runType);
 
     Int_t fRun;         // current run
     UInt_t fStartTime;  // starttime of current run
     UInt_t fEndTime;    // endtime of current run
 
   private:
+    AliPreprocessor(const AliPreprocessor & source);
+    AliPreprocessor & operator=(const AliPreprocessor & source);
     AliShuttleInterface* fShuttle;   // link to Shuttle
+    
+    TList fRunTypes;    // list of run types that are processed by this preprocessor
 
     ClassDef(AliPreprocessor, 0);
 };