Line data Source code
1 : #ifndef ALI_CDB_ENTRY_H
2 : #define ALI_CDB_ENTRY_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 AliCDBEntry //
10 : // container for an object, it identity (AliCDBId) //
11 : // and its metaData (AliCDBMetaData) //
12 : // //
13 : /////////////////////////////////////////////////////////////////////
14 :
15 : #include "AliCDBId.h"
16 : #include "AliCDBMetaData.h"
17 :
18 : class AliCDBEntry: public TObject {
19 :
20 : public:
21 : AliCDBEntry();
22 :
23 : AliCDBEntry(TObject* object, const AliCDBId& id,
24 : AliCDBMetaData* metaData, Bool_t owner = kFALSE);
25 :
26 : AliCDBEntry(TObject* object, const AliCDBPath& path, const AliCDBRunRange& runRange,
27 : AliCDBMetaData* metaData, Bool_t owner = kFALSE);
28 :
29 : AliCDBEntry(TObject* object, const AliCDBPath& path, const AliCDBRunRange& runRange,
30 : Int_t version, AliCDBMetaData* metaData, Bool_t owner = kFALSE);
31 :
32 : AliCDBEntry(TObject* object, const AliCDBPath& path, const AliCDBRunRange& runRange,
33 : Int_t version, Int_t subVersion,
34 : AliCDBMetaData* metaData, Bool_t owner = kFALSE);
35 :
36 : AliCDBEntry(TObject* object, const AliCDBPath& path, Int_t firstRun, Int_t lastRun,
37 : AliCDBMetaData* metaData, Bool_t owner = kFALSE);
38 :
39 : AliCDBEntry(TObject* object, const AliCDBPath& path, Int_t firstRun, Int_t lastRun,
40 : Int_t version, AliCDBMetaData* metaData, Bool_t owner = kFALSE);
41 :
42 : AliCDBEntry(TObject* object, const AliCDBPath& path, Int_t firstRun, Int_t lastRun,
43 : Int_t version, Int_t subVersion,
44 : AliCDBMetaData* metaData, Bool_t owner = kFALSE);
45 :
46 : virtual ~AliCDBEntry();
47 : virtual void Print(Option_t* option="") const;
48 :
49 :
50 0 : void SetId(const AliCDBId& id) {fId = id;};
51 8690 : AliCDBId& GetId() {return fId;};
52 0 : const AliCDBId& GetId() const {return fId;};
53 : void PrintId() const;
54 :
55 4 : void SetObject(TObject* object) {fObject = object;};
56 2834 : TObject* GetObject() {return fObject;};
57 0 : const TObject* GetObject() const {return fObject;};
58 :
59 0 : void SetMetaData(AliCDBMetaData* metaData) {fMetaData = metaData;};
60 8 : AliCDBMetaData* GetMetaData() {return fMetaData;};
61 0 : const AliCDBMetaData* GetMetaData() const {return fMetaData;};
62 0 : void PrintMetaData() const {fMetaData->PrintMetaData();}
63 :
64 220 : void SetOwner(Bool_t owner) {fIsOwner = owner;};
65 0 : Bool_t IsOwner() const {return fIsOwner;};
66 :
67 2 : void SetVersion(Int_t version) {fId.SetVersion(version);}
68 2 : void SetSubVersion(Int_t subVersion) {fId.SetSubVersion(subVersion);}
69 :
70 0 : const TString GetLastStorage() const {return fId.GetLastStorage();};
71 1478 : void SetLastStorage(TString lastStorage) {fId.SetLastStorage(lastStorage);};
72 : virtual Int_t Compare(const TObject* obj) const;
73 : virtual Bool_t IsSortable() const;
74 : private:
75 :
76 : AliCDBEntry(const AliCDBEntry& other); // no copy ctor
77 : void operator= (const AliCDBEntry& other); // no assignment op
78 :
79 : TObject* fObject; // object
80 : AliCDBId fId; // entry ID
81 : AliCDBMetaData* fMetaData; // metaData
82 : Bool_t fIsOwner; // ownership flag
83 :
84 1624 : ClassDef(AliCDBEntry, 1);
85 : };
86 :
87 : #endif
|