X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=STEER%2FAliShuttleInterface.h;h=820458245b7b5a98bebfcd027ede3f5c95c45f58;hp=dd6d4386edf67f9786ea94a29d3bef138fec484c;hb=28cbc692186235da20a778ed2e0f592eefce1281;hpb=84090f85e438d2803f0eb0bfa38d61b5acfcb6eb diff --git a/STEER/AliShuttleInterface.h b/STEER/AliShuttleInterface.h index dd6d4386edf..820458245b7 100644 --- a/STEER/AliShuttleInterface.h +++ b/STEER/AliShuttleInterface.h @@ -11,28 +11,78 @@ // #include +#include class TList; -class AliCDBMetaData; class AliPreprocessor; +class AliCDBMetaData; class AliCDBPath; +class AliCDBEntry; class AliShuttleInterface : public TObject { public: - enum { kDAQ = 0, kDCS, kHLT }; - static const char* fkSystemNames[3]; // names of the systems providing data to the shuttle + enum System { kDAQ = 0, kDCS, kHLT }; + enum { kNDetectors = 21 }; // number of subdetectors in ALICE - virtual UInt_t Store(const AliCDBPath& path, TObject* object, AliCDBMetaData* metaData, - Int_t validityStart = 0, Bool_t validityInfinite = kFALSE) = 0; - virtual UInt_t StoreReferenceData(const AliCDBPath& path, TObject* object, AliCDBMetaData* metaData, + virtual Bool_t Store(const AliCDBPath& path, TObject* object, AliCDBMetaData* metaData, Int_t validityStart = 0, Bool_t validityInfinite = kFALSE) = 0; + virtual Bool_t StoreReferenceData(const AliCDBPath& path, TObject* object, AliCDBMetaData* metaData) = 0; + virtual Bool_t StoreReferenceFile(const char* detector, const char* localFile, const char* gridFileName) = 0; + virtual Bool_t StoreRunMetadataFile(const char* localFile, const char* gridFileName) = 0; + virtual const char* GetFile(Int_t system, const char* detector, const char* id, const char* source) = 0; - virtual TList* GetFileSources(Int_t system, const char* detector, const char* id) = 0; - virtual void Log(const char* detector, const char* message) = 0; + + virtual TList* GetFileSources(Int_t system, const char* detector, const char* id = 0) = 0; + virtual TList* GetFileIDs(Int_t system, const char* detector, const char* source) = 0; + + virtual const char* GetRunParameter(const char* lbEntry) = 0; + virtual UInt_t GetStartTimeDCSQuery() = 0; + virtual UInt_t GetEndTimeDCSQuery() = 0; + virtual const char* GetRunType() = 0; + virtual Bool_t GetHLTStatus() = 0; + virtual const char* GetTriggerConfiguration() = 0; + virtual const char* GetCTPTimeParams() = 0; + virtual const char* GetTriggerDetectorMask() = 0; + + virtual AliCDBEntry* GetFromOCDB(const char* detector, const AliCDBPath& path) = 0; + + virtual void Log(const char* detector, const char* message, UInt_t level=3) = 0; virtual void RegisterPreprocessor(AliPreprocessor* preprocessor) = 0; + static const char* GetSystemName(UInt_t system) {return (system < 3) ? fkSystemNames[system] : 0;} + + static const char* GetOfflineDetName(const char* detName); + static const char* GetDetName(UInt_t detPos); + static Int_t GetDetPos(const char* detName); + static UInt_t NDetectors() {return kNDetectors;} + + static TString GetMainCDB () {return fgkMainCDB;} + static TString GetLocalCDB () {return fgkLocalCDB;} + + static TString GetMainRefStorage() {return fgkMainRefStorage;} + static TString GetLocalRefStorage() {return fgkLocalRefStorage;} + static const char* GetShuttleLogDir() {return fgkShuttleLogDir.Data();} + static const char* GetShuttleTempDir() {return fgkShuttleTempDir.Data();} + + virtual void SendMLFromDet(const char* value) = 0; + virtual TString* GetLTUConfig(const char* det) =0; + + protected: + + static const char* fkSystemNames[3]; // names of the systems providing data to the shuttle + static const char* fgkDetName[kNDetectors]; // names of detectors' preprocessors (3-letter code convention) + static const char* fgkOfflineDetName[kNDetectors]; // names of detectors in OCDB (AliRoot naming convention) + + static TString fgkMainCDB; // URI of the main (Grid) CDB storage + static TString fgkLocalCDB; // URI of the local backup CDB storage + static TString fgkMainRefStorage; // URI of the main (Grid) REFERENCE storage + static TString fgkLocalRefStorage; // URI of the local REFERENCE storage + + static TString fgkShuttleTempDir; // path of SHUTTLE temp folder + static TString fgkShuttleLogDir; // path of SHUTTLE log folder + private: ClassDef(AliShuttleInterface, 0); };