X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=STEER%2FAliCDBEntry.h;h=fb608d3b5189c451ba00ed1b2987cd2af8af5524;hb=4cb0615990580b06e308b265969dc7474e162420;hp=ba50cd4b84ab117efc78128f79c97e46f7dcfe86;hpb=fe913d8fed5d557febca6b4873ee9f9a0fb238a1;p=u%2Fmrichter%2FAliRoot.git diff --git a/STEER/AliCDBEntry.h b/STEER/AliCDBEntry.h index ba50cd4b84a..fb608d3b518 100644 --- a/STEER/AliCDBEntry.h +++ b/STEER/AliCDBEntry.h @@ -1,45 +1,85 @@ -#ifndef ALICDBENTRY_H -#define ALICDBENTRY_H +#ifndef ALI_CDB_ENTRY_H +#define ALI_CDB_ENTRY_H + /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ -/* $Id$ */ - -/// -/// class that contains an object from the data base and knows about its -/// validity range (meta data) -/// +///////////////////////////////////////////////////////////////////// +// // +// class AliCDBEntry // +// container for an object, it identity (AliCDBId) // +// and its metaData (AliCDBMetaData) // +// // +///////////////////////////////////////////////////////////////////// -#include +#include "AliCDBId.h" #include "AliCDBMetaData.h" - class AliCDBEntry: public TObject { + public: - AliCDBEntry(); - AliCDBEntry(const TObject* object, const AliCDBMetaData& metaData); - virtual ~AliCDBEntry(); + AliCDBEntry(); + + AliCDBEntry(TObject* object, const AliCDBId& id, + AliCDBMetaData* metaData, Bool_t owner = kFALSE); + + AliCDBEntry(TObject* object, const AliCDBPath& path, const AliCDBRunRange& runRange, + AliCDBMetaData* metaData, Bool_t owner = kFALSE); + + AliCDBEntry(TObject* object, const AliCDBPath& path, const AliCDBRunRange& runRange, + Int_t version, AliCDBMetaData* metaData, Bool_t owner = kFALSE); + + AliCDBEntry(TObject* object, const AliCDBPath& path, const AliCDBRunRange& runRange, + Int_t version, Int_t subVersion, + AliCDBMetaData* metaData, Bool_t owner = kFALSE); + + AliCDBEntry(TObject* object, const AliCDBPath& path, Int_t firstRun, Int_t lastRun, + AliCDBMetaData* metaData, Bool_t owner = kFALSE); + + AliCDBEntry(TObject* object, const AliCDBPath& path, Int_t firstRun, Int_t lastRun, + Int_t version, AliCDBMetaData* metaData, Bool_t owner = kFALSE); + + AliCDBEntry(TObject* object, const AliCDBPath& path, Int_t firstRun, Int_t lastRun, + Int_t version, Int_t subVersion, + AliCDBMetaData* metaData, Bool_t owner = kFALSE); - AliCDBEntry(const AliCDBEntry& entry); - AliCDBEntry& operator = (const AliCDBEntry& entry); + virtual ~AliCDBEntry(); - void SetVersion(Int_t version = -1) - {fMetaData.SetVersion(version);} - void SetRunRange(Int_t firstRun = -1, Int_t lastRun=-1) - {fMetaData.SetRunRange(firstRun, lastRun);} + void SetId(const AliCDBId& id) {fId = id;}; + AliCDBId& GetId() {return fId;}; + const AliCDBId& GetId() const {return fId;}; + void PrintId() const; + + void SetObject(TObject* object) {fObject = object;}; + TObject* GetObject() {return fObject;}; + const TObject* GetObject() const {return fObject;}; - virtual const char* GetName() const; - const TObject* GetObject() const {return fObject;} - const AliCDBMetaData& GetCDBMetaData() const {return fMetaData;} + void SetMetaData(AliCDBMetaData* metaData) {fMetaData = metaData;}; + AliCDBMetaData* GetMetaData() {return fMetaData;}; + const AliCDBMetaData* GetMetaData() const {return fMetaData;}; + void PrintMetaData() const {fMetaData->PrintMetaData();} - virtual Int_t Compare(const TObject* object) const; + void SetOwner(Bool_t owner) {fIsOwner = owner;}; + Bool_t IsOwner() const {return fIsOwner;}; + + void SetVersion(Int_t version) {fId.SetVersion(version);} + void SetSubVersion(Int_t subVersion) {fId.SetSubVersion(subVersion);} + + const TString GetLastStorage() const {return fId.GetLastStorage();}; + void SetLastStorage(TString lastStorage) {fId.SetLastStorage(lastStorage);}; private: - TObject* fObject; // pointer to the data base entry obj. - AliCDBMetaData fMetaData; // object's meta data + + AliCDBEntry(const AliCDBEntry& other); // no copy ctor + void operator= (const AliCDBEntry& other); // no assignment op - ClassDef(AliCDBEntry, 2) // container for a data base entry object + TObject* fObject; // object + AliCDBId fId; // entry ID + AliCDBMetaData* fMetaData; // metaData + Bool_t fIsOwner; // ownership flag + + ClassDef(AliCDBEntry, 1); }; #endif