o) updated test preprocessor (alberto)
[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:
d477ad88 28 AliShuttle(const AliShuttleConfig* config, AliCDBStorage* cdbStorage,
73abe331 29 UInt_t timeout = 5000, Int_t retries = 5);
30 virtual ~AliShuttle();
31
32 void RegisterCDBPreProcessor(AliCDBPreProcessor* processor);
33
d477ad88 34 Bool_t Process(Int_t run, UInt_t startTime, UInt_t endTime);
35 Bool_t Process(Int_t run, UInt_t startTime, UInt_t endTime,
73abe331 36 const char* detector);
37
38 Int_t GetCurrentRun() const {return fCurrentRun;};
39 UInt_t GetCurrentStartTime() const {return fCurrentStartTime;};
40 UInt_t GetCurrentEndTime() const {return fCurrentEndTime;};
41
42 Bool_t Store(const char* detector, const char* detSpec,
43 TObject* object, AliCDBMetaData* metaData);
44
45private:
46 const AliShuttleConfig* fConfig;
47 AliCDBStorage* fStorage;
48 UInt_t fTimeout;
49 Int_t fRetries;
50
51 TMap fPreProcessorMap;
52
53 Int_t fCurrentRun;
54 UInt_t fCurrentStartTime;
55 UInt_t fCurrentEndTime;
56
57 Bool_t GetValueSet(const char* host, Int_t port, const char* alias,
d477ad88 58 TObjArray& result);
73abe331 59
60 ClassDef(AliShuttle, 0);
61};
62
63#endif