]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliCDBPath.h
Version number ++
[u/mrichter/AliRoot.git] / STEER / AliCDBPath.h
CommitLineData
9e1ceb13 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
7/////////////////////////////////////////////////////////////////////
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// //
15/////////////////////////////////////////////////////////////////////
16
17#include <TObject.h>
18#include <TString.h>
19
20class AliCDBPath: public TObject {
21
22public:
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 TString& GetLevel0() const {return fLevel0;};
42 const TString& GetLevel1() const {return fLevel1;};
43 const TString& GetLevel2() const {return fLevel2;};
44
45 Bool_t IsValid() const {return fIsValid;};
46
47 Bool_t IsWildcard() const {return fIsWildcard;};
48
49 Bool_t Level0Comprises(const TString& str) const;
50 Bool_t Level1Comprises(const TString& str) const;
51 Bool_t Level2Comprises(const TString& str) const;
52
53 Bool_t Comprises(const AliCDBPath& other) const;
54
55private:
56
57 Bool_t IsWord(const TString& str);
58
59 void InitPath();
60
61 void Init();
62
63 TString fPath; // detector pathname (Detector/DBType/SpecType)
64 TString fLevel0; // level0 name (ex. detector: ZDC, TPC...)
65 TString fLevel1; // level1 name (ex. DB type, Calib, Align)
66 TString fLevel2; // level2 name (ex. DetSpecType, pedestals, gain...)
67
68 Bool_t fIsValid; // validity flag
69 Bool_t fIsWildcard; // wildcard flag
70
71 ClassDef(AliCDBPath, 1);
72};
73
74#endif