]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliCDBLocal.h
Avoid mixing up trigger and tracks replacing the option "CP" by
[u/mrichter/AliRoot.git] / STEER / AliCDBLocal.h
CommitLineData
9e1ceb13 1#ifndef ALI_CDB_LOCAL_H
2#define ALI_CDB_LOCAL_H
fe913d8f 3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
9e1ceb13 7/////////////////////////////////////////////////////////////////////
8// //
9// class AliCDBLocal //
10// access class to a DataBase in a local storage //
11// //
12/////////////////////////////////////////////////////////////////////
fe913d8f 13
14#include "AliCDBStorage.h"
9e1ceb13 15#include "AliCDBManager.h"
fe913d8f 16
17class AliCDBLocal: public AliCDBStorage {
9e1ceb13 18 friend class AliCDBLocalFactory;
19
20public:
21
fdf65bb5 22 virtual Bool_t IsReadOnly() const {return kFALSE;};
23 virtual Bool_t HasSubVersion() const {return kTRUE;};
b05400be 24 virtual Bool_t Contains(const char* path) const;
c3a7b59a 25 virtual Int_t GetLatestVersion(const char* path, Int_t run);
26 virtual Int_t GetLatestSubVersion(const char* path, Int_t run, Int_t version=-1);
27 virtual Bool_t IdToFilename(const AliCDBId& id, TString& filename) const;
9e1ceb13 28
29protected:
30
c3a7b59a 31 virtual AliCDBEntry* GetEntry(const AliCDBId& queryId);
32 virtual TList* GetEntries(const AliCDBId& queryId);
33 virtual Bool_t PutEntry(AliCDBEntry* entry);
b05400be 34 virtual TList* GetIdListFromFile(const char* fileName);
9e1ceb13 35
36private:
37
fe12e09c 38 AliCDBLocal(const AliCDBLocal & source);
39 AliCDBLocal & operator=(const AliCDBLocal & source);
9e1ceb13 40 AliCDBLocal(const char* baseDir);
41 virtual ~AliCDBLocal();
42
43 Bool_t FilenameToId(const char* filename, AliCDBRunRange& runRange,
44 Int_t& version, Int_t& subVersion);
9e1ceb13 45
46 Bool_t PrepareId(AliCDBId& id);
4b5e0dce 47 Bool_t GetId(const AliCDBId& query, AliCDBId& result);
9e1ceb13 48
62032124 49 virtual void QueryValidFiles();
50
9e1ceb13 51 void GetEntriesForLevel0(const char* level0, const AliCDBId& query, TList* result);
52 void GetEntriesForLevel1(const char* level0, const char* Level1,
53 const AliCDBId& query, TList* result);
54
55 TString fBaseDirectory; // path of the DB folder
56
57 ClassDef(AliCDBLocal, 0); // access class to a DataBase in a local storage
58};
59
60/////////////////////////////////////////////////////////////////////
61// //
62// class AliCDBLocalFactory //
63// //
64/////////////////////////////////////////////////////////////////////
65
66class AliCDBLocalFactory: public AliCDBStorageFactory {
fe913d8f 67
68public:
fe913d8f 69
9e1ceb13 70 virtual Bool_t Validate(const char* dbString);
71 virtual AliCDBParam* CreateParameter(const char* dbString);
72
fe913d8f 73protected:
9e1ceb13 74 virtual AliCDBStorage* Create(const AliCDBParam* param);
75
76 ClassDef(AliCDBLocalFactory, 0);
77};
78
79/////////////////////////////////////////////////////////////////////
80// //
81// class AliCDBLocalParam //
82// //
83/////////////////////////////////////////////////////////////////////
84
85class AliCDBLocalParam: public AliCDBParam {
86
87public:
88 AliCDBLocalParam();
89 AliCDBLocalParam(const char* dbPath);
90
91 virtual ~AliCDBLocalParam();
92
93 const TString& GetPath() const {return fDBPath;};
94
95 virtual AliCDBParam* CloneParam() const;
96
97 virtual ULong_t Hash() const;
98 virtual Bool_t IsEqual(const TObject* obj) const;
fe913d8f 99
100private:
fe913d8f 101
9e1ceb13 102 TString fDBPath; // path of the DB folder
fe913d8f 103
9e1ceb13 104 ClassDef(AliCDBLocalParam, 0);
fe913d8f 105};
106
107#endif