1 #if !defined( __CINT__) || defined(__MAKECINT__)
5 #include <AliCDBManager.h>
6 #include <AliCDBStorage.h>
7 #include <AliCDBEntry.h>
8 #include <AliCDBMetaData.h>
10 #include "AliTRDgeometry.h"
12 #include "AliTRDCalROC.h"
13 #include "AliTRDCalPad.h"
14 #include "AliTRDCalDet.h"
15 #include "AliTRDCalFEE.h"
17 #include "AliTRDCalChamberStatus.h"
18 #include "AliTRDCalPadStatus.h"
19 #include "AliTRDCalSingleChamberStatus.h"
21 #include "AliTRDCalPIDLQ.h"
22 #include "AliTRDCalMonitoring.h"
26 // Run numbers for the dummy file
27 const Int_t gkDummyRunBeg = 0;
28 const Int_t gkDummyRunEnd = 999999999;
29 AliCDBStorage *gStorLoc = 0;
31 //_____________________________________________________________________________
32 TObject *CreatePadObject(const char *shortName, const char *description
36 AliTRDCalPad *calPad = new AliTRDCalPad(shortName, description);
37 for (Int_t det = 0; det < AliTRDgeometry::kNdet; ++det) {
38 AliTRDCalROC *calROC = calPad->GetCalROC(det);
39 for (Int_t channel = 0; channel < calROC->GetNchannels(); ++channel) {
40 calROC->SetValue(channel, value);
47 //_____________________________________________________________________________
48 TObject *CreateDetObject(const char *shortName, const char *description
52 AliTRDCalDet *object = new AliTRDCalDet(shortName, description);
53 for (Int_t det = 0; det < AliTRDgeometry::kNdet; ++det) {
54 object->SetValue(det, value);
60 //_____________________________________________________________________________
61 TObject *CreateFEEObject()
64 AliTRDCalFEE *object = new AliTRDCalFEE("FEE"
65 ,"TRD FEE calibration parameters");
67 object->SetNumberOfTimeBins(24);
69 object->SetTailCancelationTau1(0);
70 object->SetTailCancelationTau2(0);
71 object->SetTailCancelationAmp(0);
73 object->SetPedestal(0);
79 //_____________________________________________________________________________
80 TObject *CreatePRFWidthObject()
83 AliTRDCalPad *calPad = new AliTRDCalPad("PRFWidth","PRFWidth");
84 for (Int_t iLayer = 0; iLayer < AliTRDgeometry::kNlayer; ++iLayer) {
107 cout << "CreatePRFWidthObject: UNEXPECTED" << endl;
111 for (Int_t iStack = 0; iStack < AliTRDgeometry::kNstack; ++iStack) {
112 for (Int_t iSector = 0; iSector < AliTRDgeometry::kNsector; ++iSector) {
113 AliTRDCalROC *calROC = calPad->GetCalROC(iLayer,iStack,iSector);
114 for (Int_t iChannel = 0; iChannel < calROC->GetNchannels(); ++iChannel) {
115 calROC->SetValue(iChannel, value);
126 //_____________________________________________________________________________
127 AliTRDCalChamberStatus *CreateChamberStatusObject()
130 AliTRDCalChamberStatus *obj = new AliTRDCalChamberStatus("chamberstatus"
133 for (Int_t i = 0; i < AliTRDgeometry::kNdet; ++i) {
134 obj->SetStatus(i, AliTRDCalChamberStatus::kInstalled);
141 //_____________________________________________________________________________
142 AliTRDCalPadStatus *CreatePadStatusObject()
144 AliTRDCalPadStatus *obj = new AliTRDCalPadStatus("padstatus"
151 //_____________________________________________________________________________
152 AliTRDCalMonitoring *CreateMonitoringObject()
154 AliTRDCalMonitoring *obj = new AliTRDCalMonitoring();
160 //_____________________________________________________________________________
161 TClonesArray* CreateRecoParamObject()
163 TClonesArray *recos = new TClonesArray("AliTRDrecoParam", 3);
164 recos->SetOwner(kTRUE);
166 AliTRDrecoParam *rec = 0x0;
167 AliTRDrecoParam *reco = new((*recos)[0]) AliTRDrecoParam(*(rec = AliTRDrecoParam::GetLowFluxParam()));
169 // further settings for low flux reco param
170 // reco->SetThisAndThat()
172 reco = new((*recos)[1]) AliTRDrecoParam(*(rec = AliTRDrecoParam::GetHighFluxParam()));
175 reco = new((*recos)[2]) AliTRDrecoParam(*(rec = AliTRDrecoParam::GetCosmicTestParam()));
182 //_____________________________________________________________________________
183 AliCDBMetaData *CreateMetaObject(const char *objectClassName)
186 AliCDBMetaData *md1= new AliCDBMetaData();
187 md1->SetObjectClassName(objectClassName);
188 md1->SetResponsible("Christoph Blume");
189 md1->SetBeamPeriod(1);
190 md1->SetAliRootVersion("05-16-00"); //root version
191 md1->SetComment("Ideal calibration values");
197 //_____________________________________________________________________________
198 void StoreObject(const char *cdbPath, TObject *object, AliCDBMetaData *metaData)
201 AliCDBId id1(cdbPath,gkDummyRunBeg,gkDummyRunEnd);
202 gStorLoc->Put(object,id1,metaData);
207 //_____________________________________________________________________________
208 void AliTRDCreateDummyCDB()
212 << "TRD :: Creating dummy CDB for the runs "
218 AliCDBManager *man = AliCDBManager::Instance();
219 gStorLoc = man->GetStorage("local://$ALICE_ROOT");
225 AliCDBMetaData *metaData = 0;
231 metaData= new AliCDBMetaData();
232 metaData->SetObjectClassName("TClonesArray");
233 metaData->SetResponsible("Alexandru Bercuci");
234 metaData->SetBeamPeriod(1);
235 metaData->SetAliRootVersion("05-19-04"); //root version
236 metaData->SetComment("Ideal reconstruction parameters for low, high and cosmic runs");
237 StoreObject("TRD/Calib/RecoParam",CreateRecoParamObject(),metaData);
244 metaData = CreateMetaObject("AliTRDCalPad");
246 obj = CreatePadObject("LocalVdrift" ,"TRD drift velocities (local variations)",1);
247 StoreObject("TRD/Calib/LocalVdrift" ,obj,metaData);
249 obj = CreatePadObject("LocalT0" ,"T0 (local variations)",0);
250 StoreObject("TRD/Calib/LocalT0" ,obj,metaData);
252 obj = CreatePadObject("GainFactor" ,"GainFactor (local variations)",1);
253 StoreObject("TRD/Calib/LocalGainFactor" ,obj,metaData);
255 obj = CreatePRFWidthObject();
256 StoreObject("TRD/Calib/PRFWidth" ,obj,metaData);
262 metaData = CreateMetaObject("AliTRDCalDet");
264 obj = CreateDetObject("ChamberVdrift" ,"TRD drift velocities (detector value)", 1.5);
265 StoreObject("TRD/Calib/ChamberVdrift" ,obj,metaData);
267 obj = CreateDetObject("ChamberT0" ,"T0 (detector value)",0);
268 StoreObject("TRD/Calib/ChamberT0" ,obj,metaData);
270 obj = CreateDetObject("ChamberGainFactor" ,"GainFactor (detector value)", 1);
271 StoreObject("TRD/Calib/ChamberGainFactor" ,obj,metaData);
277 metaData = CreateMetaObject("AliTRDCalFEE");
278 obj = CreateFEEObject();
279 StoreObject("TRD/Calib/FEE" ,obj,metaData);
285 metaData = CreateMetaObject("AliTRDCalChamberStatus");
286 obj = CreateChamberStatusObject();
287 StoreObject("TRD/Calib/ChamberStatus" ,obj,metaData);
289 metaData = CreateMetaObject("AliTRDCalPadStatus");
290 obj = CreatePadStatusObject();
291 StoreObject("TRD/Calib/PadStatus" ,obj,metaData);
297 metaData = CreateMetaObject("AliTRDCalMonitoring");
298 obj = CreateMonitoringObject();
299 StoreObject("TRD/Calib/MonitoringData" ,obj,metaData);