This commit was generated by cvs2svn to compensate for changes in r12269,
[u/mrichter/AliRoot.git] / SHUTTLE / AliShuttle.h
CommitLineData
73abe331 1#ifndef ALI_SHUTTLE_H
2#define ALI_SHUTTLE_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//
11// This class is the main manager for
12// AliShuttle. It organizes the data retrieval
13// from DCS and call the interface methods of
14// AliCDBPreProcessor.
15//
16
17#include <TObject.h>
18#include <TMap.h>
19
20class AliShuttleConfig;
21class AliCDBStorage;
22class AliCDBMetaData;
23class AliCDBParam;
24class AliCDBPreProcessor;
25
26class AliShuttle: public TObject {
27public:
28 AliShuttle(const AliShuttleConfig* config, const char* cdbStorageURI,
29 UInt_t timeout = 5000, Int_t retries = 5);
30 AliShuttle(const AliShuttleConfig* config, const AliCDBParam* param,
31 UInt_t timeout = 5000, Int_t retries = 5);
32 virtual ~AliShuttle();
33
34 void RegisterCDBPreProcessor(AliCDBPreProcessor* processor);
35
36 void Process(Int_t run, UInt_t startTime, UInt_t endTime);
37 void Process(Int_t run, UInt_t startTime, UInt_t endTime,
38 const char* detector);
39
40 Int_t GetCurrentRun() const {return fCurrentRun;};
41 UInt_t GetCurrentStartTime() const {return fCurrentStartTime;};
42 UInt_t GetCurrentEndTime() const {return fCurrentEndTime;};
43
44 Bool_t Store(const char* detector, const char* detSpec,
45 TObject* object, AliCDBMetaData* metaData);
46
47private:
48 const AliShuttleConfig* fConfig;
49 AliCDBStorage* fStorage;
50 UInt_t fTimeout;
51 Int_t fRetries;
52
53 TMap fPreProcessorMap;
54
55 Int_t fCurrentRun;
56 UInt_t fCurrentStartTime;
57 UInt_t fCurrentEndTime;
58
59 Bool_t GetValueSet(const char* host, Int_t port, const char* alias,
60 TList& result);
61
62 ClassDef(AliShuttle, 0);
63};
64
65#endif