AliRoot Core  edcc906 (edcc906)
AliCDBPath.h
Go to the documentation of this file.
1 #ifndef ALI_CDB_PATH_H
2 #define ALI_CDB_PATH_H
3 
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice */
6 
8 // //
9 // class AliCDBPath //
10 // Path string identifying the object: //
11 // "level0/level1/level2" //
12 // (was: "Detector/DBType/DetSpecType") //
13 // (example: "ZDC/Calib/Pedestals") //
14 // //
16 
17 #include <TObject.h>
18 #include <TString.h>
19 
20 class AliCDBPath: public TObject {
21 
22  public:
23 
24  AliCDBPath();
25 
26  AliCDBPath(const AliCDBPath& other);
27 
28  AliCDBPath(const char* level0, const char* level1,
29  const char* level2);
30 
31  AliCDBPath(const char* path);
32 
33  AliCDBPath(const TString& path);
34 
35  virtual ~AliCDBPath();
36 
37 
38  const TString& GetPath() const {return fPath;}
39  void SetPath(const char* path) {fPath=path; InitPath();}
40 
41  const char* GetLevel(Int_t i) const;
42 
43  Bool_t IsValid() const {return fIsValid;}
44 
45  Bool_t IsWildcard() const {return fIsWildcard;}
46 
47  Bool_t Level0Comprises(const TString& str) const;
48  Bool_t Level1Comprises(const TString& str) const;
49  Bool_t Level2Comprises(const TString& str) const;
50 
51  Bool_t Comprises(const AliCDBPath& other) const;
52 
53  private:
54 
55  Bool_t IsWord(const TString& str);
56 
57  void InitPath();
58 
59  void Init();
60 
61  TString fPath; // detector pathname (Detector/DBType/SpecType)
62  TString fLevel0; // level0 name (ex. detector: ZDC, TPC...)
63  TString fLevel1; // level1 name (ex. DB type, Calib, Align)
64  TString fLevel2; // level2 name (ex. DetSpecType, pedestals, gain...)
65 
66  Bool_t fIsValid; // validity flag
67  Bool_t fIsWildcard; // wildcard flag
68 
69  ClassDef(AliCDBPath, 1);
70 };
71 
72 #endif
TString fLevel2
Definition: AliCDBPath.h:64
const TString & GetPath() const
Definition: AliCDBPath.h:38
void SetPath(const char *path)
Definition: AliCDBPath.h:39
Bool_t Comprises(const AliCDBPath &other) const
Definition: AliCDBPath.cxx:250
TString fLevel0
Definition: AliCDBPath.h:62
Bool_t Level1Comprises(const TString &str) const
Definition: AliCDBPath.cxx:228
const char * path
TString fPath
Definition: AliCDBPath.h:61
Bool_t Level2Comprises(const TString &str) const
Definition: AliCDBPath.cxx:239
const char * GetLevel(Int_t i) const
Definition: AliCDBPath.cxx:259
Bool_t Level0Comprises(const TString &str) const
Definition: AliCDBPath.cxx:217
void InitPath()
Definition: AliCDBPath.cxx:130
virtual ~AliCDBPath()
Definition: AliCDBPath.cxx:196
Bool_t fIsWildcard
Definition: AliCDBPath.h:67
Bool_t fIsValid
Definition: AliCDBPath.h:66
TString fLevel1
Definition: AliCDBPath.h:63
void Init()
Definition: AliCDBPath.cxx:210
Bool_t IsWildcard() const
Definition: AliCDBPath.h:45
Bool_t IsValid() const
Definition: AliCDBPath.h:43
Bool_t IsWord(const TString &str)
Definition: AliCDBPath.cxx:202