1 #ifndef ALI_CDB_ENTRY_H
2 #define ALI_CDB_ENTRY_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 /////////////////////////////////////////////////////////////////////
9 // class AliCDBEntry //
10 // container for an object, it identity (AliCDBId) //
11 // and its metaData (AliCDBMetaData) //
13 /////////////////////////////////////////////////////////////////////
16 #include "AliCDBMetaData.h"
18 class AliCDBEntry: public TObject {
23 AliCDBEntry(TObject* object, const AliCDBId& id,
24 AliCDBMetaData* metaData, Bool_t owner = kFALSE);
26 AliCDBEntry(TObject* object, const AliCDBPath& path, const AliCDBRunRange& runRange,
27 AliCDBMetaData* metaData, Bool_t owner = kFALSE);
29 AliCDBEntry(TObject* object, const AliCDBPath& path, const AliCDBRunRange& runRange,
30 Int_t version, AliCDBMetaData* metaData, Bool_t owner = kFALSE);
32 AliCDBEntry(TObject* object, const AliCDBPath& path, const AliCDBRunRange& runRange,
33 Int_t version, Int_t subVersion,
34 AliCDBMetaData* metaData, Bool_t owner = kFALSE);
36 AliCDBEntry(TObject* object, const AliCDBPath& path, Int_t firstRun, Int_t lastRun,
37 AliCDBMetaData* metaData, Bool_t owner = kFALSE);
39 AliCDBEntry(TObject* object, const AliCDBPath& path, Int_t firstRun, Int_t lastRun,
40 Int_t version, AliCDBMetaData* metaData, Bool_t owner = kFALSE);
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);
46 virtual ~AliCDBEntry();
49 void SetId(const AliCDBId& id) {fId = id;};
50 AliCDBId& GetId() {return fId;};
51 const AliCDBId& GetId() const {return fId;};
54 void SetObject(TObject* object) {fObject = object;};
55 TObject* GetObject() {return fObject;};
56 const TObject* GetObject() const {return fObject;};
58 void SetMetaData(AliCDBMetaData* metaData) {fMetaData = metaData;};
59 AliCDBMetaData* GetMetaData() {return fMetaData;};
60 const AliCDBMetaData* GetMetaData() const {return fMetaData;};
61 void PrintMetaData() const {fMetaData->PrintMetaData();}
63 void SetOwner(Bool_t owner) {fIsOwner = owner;};
64 Bool_t IsOwner() const {return fIsOwner;};
66 void SetVersion(Int_t version) {fId.SetVersion(version);}
67 void SetSubVersion(Int_t subVersion) {fId.SetSubVersion(subVersion);}
69 const TString GetLastStorage() const {return fId.GetLastStorage();};
70 void SetLastStorage(TString lastStorage) {fId.SetLastStorage(lastStorage);};
74 AliCDBEntry(const AliCDBEntry& other); // no copy ctor
75 void operator= (const AliCDBEntry& other); // no assignment op
77 TObject* fObject; // object
78 AliCDBId fId; // entry ID
79 AliCDBMetaData* fMetaData; // metaData
80 Bool_t fIsOwner; // ownership flag
82 ClassDef(AliCDBEntry, 1);