]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/CDB/AliShuttleInterface.h
Update master to aliroot
[u/mrichter/AliRoot.git] / STEER / CDB / AliShuttleInterface.h
CommitLineData
57459306 1#ifndef ALI_SHUTTLE_INTERFACE_H
2#define ALI_SHUTTLE_INTERFACE_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// abstract interface class to AliShuttle
11//
12
13#include <TObject.h>
3fe92ec0 14#include <TString.h>
57459306 15
16class TList;
b88146b7 17class AliPreprocessor;
4426d64a 18class AliCDBMetaData;
84090f85 19class AliCDBPath;
4426d64a 20class AliCDBEntry;
57459306 21
22class AliShuttleInterface : public TObject
23{
24 public:
5078a13f 25 enum System { kDAQ = 0, kDCS, kHLT, kDQM };
02a99c75 26 enum { kNDetectors = 22 }; // number of subdetectors in ALICE
57459306 27
eb4a4f5c 28 virtual Bool_t Store(const AliCDBPath& path, TObject* object, AliCDBMetaData* metaData,
5078a13f 29 Int_t validityStart = 0, Bool_t validityInfinite = kFALSE) = 0;
eb4a4f5c 30 virtual Bool_t StoreReferenceData(const AliCDBPath& path, TObject* object, AliCDBMetaData* metaData) = 0;
9827400b 31 virtual Bool_t StoreReferenceFile(const char* detector, const char* localFile, const char* gridFileName) = 0;
bba57327 32 virtual Bool_t StoreRunMetadataFile(const char* localFile, const char* gridFileName) = 0;
5078a13f 33
57459306 34 virtual const char* GetFile(Int_t system, const char* detector, const char* id, const char* source) = 0;
5078a13f 35
4a33bdd9 36 virtual TList* GetFileSources(Int_t system, const char* detector, const char* id = 0) = 0;
37 virtual TList* GetFileIDs(Int_t system, const char* detector, const char* source) = 0;
5078a13f 38
1b82b32d 39 virtual const char* GetRunParameter(const char* lbEntry) = 0;
f12d42ce 40 virtual UInt_t GetStartTimeDCSQuery() = 0;
41 virtual UInt_t GetEndTimeDCSQuery() = 0;
9827400b 42 virtual const char* GetRunType() = 0;
03b6e5e2 43 virtual Bool_t GetHLTStatus() = 0;
ca8ea066 44 virtual const char* GetTriggerConfiguration() = 0;
2c5f9d06 45 virtual const char* GetCTPTimeParams() = 0;
b48d2542 46 virtual const char* GetTriggerDetectorMask() = 0;
03b6e5e2 47
4a33bdd9 48 virtual AliCDBEntry* GetFromOCDB(const char* detector, const AliCDBPath& path) = 0;
5078a13f 49
6a150f83 50 virtual void Log(const char* detector, const char* message, UInt_t level=3) = 0;
57459306 51
b88146b7 52 virtual void RegisterPreprocessor(AliPreprocessor* preprocessor) = 0;
53
efec19bd 54 static const char* GetSystemName(UInt_t system) {return (system < 4) ? fkSystemNames[system] : 0;}
1b82b32d 55
56 static const char* GetOfflineDetName(const char* detName);
57 static const char* GetDetName(UInt_t detPos);
f12d42ce 58 static Int_t GetDetPos(const char* detName);
59 static UInt_t NDetectors() {return kNDetectors;}
1b82b32d 60
3fe92ec0 61 static TString GetMainCDB () {return fgkMainCDB;}
3fe92ec0 62 static TString GetLocalCDB () {return fgkLocalCDB;}
3fe92ec0 63 static TString GetMainRefStorage() {return fgkMainRefStorage;}
3fe92ec0 64 static TString GetLocalRefStorage() {return fgkLocalRefStorage;}
c4918594 65 static TString GetMirrorSEs () {return fgkMirrorSEs;}
66
996c5424 67 static const char* GetShuttleLogDir() {return fgkShuttleLogDir.Data();}
68 static const char* GetShuttleTempDir() {return fgkShuttleTempDir.Data();}
3fe92ec0 69
1f0f7c2e 70 virtual void SendMLFromDet(const char* value) = 0;
6ecb073a 71 virtual TString* GetLTUConfig(const char* det) =0;
1f0f7c2e 72
ffc56633 73 protected:
74
efec19bd 75 static const char* fkSystemNames[4]; // names of the systems providing data to the shuttle
3fe92ec0 76 static const char* fgkDetName[kNDetectors]; // names of detectors' preprocessors (3-letter code convention)
77 static const char* fgkOfflineDetName[kNDetectors]; // names of detectors in OCDB (AliRoot naming convention)
78
79 static TString fgkMainCDB; // URI of the main (Grid) CDB storage
80 static TString fgkLocalCDB; // URI of the local backup CDB storage
81 static TString fgkMainRefStorage; // URI of the main (Grid) REFERENCE storage
82 static TString fgkLocalRefStorage; // URI of the local REFERENCE storage
c4918594 83 static TString fgkMirrorSEs; // mirror SEs for the main (Grid) CDB storage
3fe92ec0 84
85 static TString fgkShuttleTempDir; // path of SHUTTLE temp folder
86 static TString fgkShuttleLogDir; // path of SHUTTLE log folder
1b82b32d 87
57459306 88 private:
89 ClassDef(AliShuttleInterface, 0);
90};
91
92#endif