]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/CDB/AliCDBEntry.cxx
ZDC automatic scripts updates (Marco Leoncino) + updates in QA config
[u/mrichter/AliRoot.git] / STEER / CDB / AliCDBEntry.cxx
CommitLineData
2c8628dd 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
9e1ceb13 16/////////////////////////////////////////////////////////////////////
17// //
18// class AliCDBEntry //
19// container for an object, it identity (AliCDBId) //
20// and its metaData (AliCDBMetaData) //
21// //
22/////////////////////////////////////////////////////////////////////
2c8628dd 23
fe913d8f 24#include "AliCDBEntry.h"
024cf675 25#include "AliLog.h"
2c8628dd 26
fe913d8f 27ClassImp(AliCDBEntry)
2c8628dd 28
2c8628dd 29//_____________________________________________________________________________
9e1ceb13 30AliCDBEntry::AliCDBEntry():
5078a13f 31 fObject(NULL),
32 fId(),
33 fMetaData(NULL),
34 fIsOwner(kFALSE){
35 // default constructor
2c8628dd 36
5078a13f 37 }
2c8628dd 38
39//_____________________________________________________________________________
9e1ceb13 40AliCDBEntry::AliCDBEntry(TObject* object, const AliCDBId& id,
5078a13f 41 AliCDBMetaData* metaData, Bool_t owner):
42 fObject(object),
43 fId(id),
44 fMetaData(metaData),
45 fIsOwner(owner){
46 // constructor
d345a2d8 47 fMetaData->SetObjectClassName(fObject->ClassName());
5078a13f 48 }
2c8628dd 49
50//_____________________________________________________________________________
9e1ceb13 51AliCDBEntry::AliCDBEntry(TObject* object, const AliCDBPath& path,
5078a13f 52 const AliCDBRunRange& runRange,
53 AliCDBMetaData* metaData,Bool_t owner):
54 fObject(object),
55 fId(path, runRange, -1, -1),
56 fMetaData(metaData),
57 fIsOwner(owner){
58 // constructor
af42ebbf 59 fMetaData->SetObjectClassName(fObject->ClassName());
5078a13f 60 }
2c8628dd 61
2c8628dd 62//_____________________________________________________________________________
9e1ceb13 63AliCDBEntry::AliCDBEntry(TObject* object, const AliCDBPath& path,
5078a13f 64 const AliCDBRunRange& runRange,
65 Int_t version, AliCDBMetaData* metaData, Bool_t owner):
66 fObject(object),
67 fId(path, runRange, version, -1),
68 fMetaData(metaData),
69 fIsOwner(owner){
70 // constructor
af42ebbf 71 fMetaData->SetObjectClassName(fObject->ClassName());
5078a13f 72 }
2c8628dd 73
74//_____________________________________________________________________________
9e1ceb13 75AliCDBEntry::AliCDBEntry(TObject* object, const AliCDBPath& path,
5078a13f 76 const AliCDBRunRange& runRange,
77 Int_t version, Int_t subVersion,
78 AliCDBMetaData* metaData, Bool_t owner):
79 fObject(object),
80 fId(path, runRange, version, subVersion),
81 fMetaData(metaData),
82 fIsOwner(owner){
83 // constructor
af42ebbf 84 fMetaData->SetObjectClassName(fObject->ClassName());
5078a13f 85 }
2c8628dd 86
87
9e1ceb13 88//_____________________________________________________________________________
89AliCDBEntry::AliCDBEntry(TObject* object, const AliCDBPath& path,
5078a13f 90 Int_t firstRun, Int_t lastRun,
91 AliCDBMetaData* metaData, Bool_t owner):
92 fObject(object),
93 fId(path, firstRun, lastRun, -1, -1),
94 fMetaData(metaData),
95 fIsOwner(owner){
96 // constructor
af42ebbf 97 fMetaData->SetObjectClassName(fObject->ClassName());
5078a13f 98 }
2c8628dd 99
100//_____________________________________________________________________________
9e1ceb13 101AliCDBEntry::AliCDBEntry(TObject* object, const AliCDBPath& path,
5078a13f 102 Int_t firstRun, Int_t lastRun,
103 Int_t version, AliCDBMetaData* metaData,
104 Bool_t owner):
105 fObject(object),
106 fId(path, firstRun, lastRun, version, -1),
107 fMetaData(metaData),
108 fIsOwner(owner){
109 // constructor
af42ebbf 110 fMetaData->SetObjectClassName(fObject->ClassName());
5078a13f 111 }
2c8628dd 112
9e1ceb13 113//_____________________________________________________________________________
114AliCDBEntry::AliCDBEntry( TObject* object, const AliCDBPath& path,
5078a13f 115 Int_t firstRun, Int_t lastRun,
116 Int_t version, Int_t subVersion,
117 AliCDBMetaData* metaData, Bool_t owner):
118 fObject(object),
119 fId(path, firstRun, lastRun, version, subVersion),
120 fMetaData(metaData), fIsOwner(owner){
121 // constructor
af42ebbf 122 fMetaData->SetObjectClassName(fObject->ClassName());
5078a13f 123 }
2c8628dd 124
125//_____________________________________________________________________________
9e1ceb13 126AliCDBEntry::~AliCDBEntry() {
5078a13f 127 // destructor
9e1ceb13 128
5078a13f 129 if (fIsOwner) {
130 if (fObject) {
131 delete fObject;
132 }
2c8628dd 133
5078a13f 134 if (fMetaData) {
135 delete fMetaData;
136 }
137 }
2c8628dd 138}
139
024cf675 140//_____________________________________________________________________________
141void AliCDBEntry::PrintId() const {
5078a13f 142
143 AliInfo(Form("%s",fId.ToString().Data()));
024cf675 144
145}
b765ce85 146
147
148Int_t AliCDBEntry::Compare(const TObject* obj) const
149{
150 //
151 // compare according y
152 AliCDBEntry * o2 = (AliCDBEntry*)obj;
153 return TString(this->GetId().GetPath()).CompareTo((o2->GetId().GetPath()));
154
155}
156
157Bool_t AliCDBEntry::IsSortable() const {
158 return kTRUE;
159}