]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDCreateDummyCDB.C
Adding protected copy constructor and assignment operator
[u/mrichter/AliRoot.git] / TRD / AliTRDCreateDummyCDB.C
CommitLineData
3551db50 1#if !defined( __CINT__) || defined(__MAKECINT__)
2
3#include <iostream>
4
5#include <AliCDBManager.h>
6#include <AliCDBStorage.h>
7#include <AliCDBEntry.h>
8#include <AliCDBMetaData.h>
9
10#include "AliTRDgeometry.h"
11
12#include "AliTRDCalROC.h"
3d865241 13#include "AliTRDCalChamberPos.h"
14#include "AliTRDCalStackPos.h"
3551db50 15#include "AliTRDCalPad.h"
16#include "AliTRDCalDet.h"
17#include "AliTRDCalGlobals.h"
18
19#endif
20
21// run number for the dummy file
22const Int_t gkDummyRun = 0;
23AliCDBStorage* gStorLoc = 0;
24
25TObject* CreatePadObject(const char* shortName, const char* description, Float_t value)
26{
27 AliTRDCalPad *calPad = new AliTRDCalPad(shortName, description);
28 for (Int_t det=0; det<AliTRDgeometry::kNdet; ++det)
29 {
30 AliTRDCalROC *calROC = calPad->GetCalROC(det);
31 for (Int_t channel=0; channel<calROC->GetNchannels(); ++channel)
32 calROC->SetValue(channel, value);
33 }
34 return calPad;
35}
36
37TObject* CreateDetObject(const char* shortName, const char* description, Float_t value)
38{
39 AliTRDCalDet *object = new AliTRDCalDet(shortName, description);
40 for (Int_t det=0; det<AliTRDgeometry::kNdet; ++det)
41 object->SetValue(det, value);
42 return object;
43}
44
45TObject* CreateGlobalsObject()
46{
47 AliTRDCalGlobals *object = new AliTRDCalGlobals("Globals", "Global TRD calibration parameters");
48
49 object->SetSamplingFrequency(10.0);
50 object->SetNumberOfTimeBins(22);
51
52 return object;
53}
54
55TObject* CreateChamberObject()
56{
3d865241 57 AliTRDCalChamberPos *object = new AliTRDCalChamberPos("Chamber", "TRD chamber positions");
3551db50 58
59 for (Int_t det=0; det<AliTRDgeometry::kNdet; ++det)
60 {
61 object->SetPos(det, 0, 0, 0);
62 object->SetRot(det, 0, 0, 0);
63 }
64
65 return object;
66}
67
68TObject* CreateStackObject()
69{
3d865241 70 AliTRDCalStackPos *object = new AliTRDCalStackPos("Stack", "TRD stack positions");
3551db50 71
72 for (Int_t sect=0; sect<AliTRDgeometry::kNsect; ++sect)
73 {
74 for (Int_t chamber=0; chamber<AliTRDgeometry::kNcham; ++chamber)
75 {
76 object->SetPos(chamber, sect, 0, 0, 0);
77 object->SetRot(chamber, sect, 0, 0, 0);
78 }
79 }
80
81 return object;
82}
83
6270bbff 84TObject* CreatePRFWidthObject()
85{
86 AliTRDCalPad *calPad = new AliTRDCalPad("PRFWidth","PRFWidth");
87 for (Int_t plane=0; plane<AliTRDgeometry::kNplan; ++plane)
88 {
89 Float_t value = 0;
90 switch (plane)
91 {
92 case 0: value = 0.515; break;
93 case 1: value = 0.502; break;
94 case 2: value = 0.491; break;
95 case 3: value = 0.481; break;
96 case 4: value = 0.471; break;
97 case 5: value = 0.463; break;
98 default: cout << "CreatePRFWidthObject: UNEXPECTED" << endl; return 0;
99 }
100 for (Int_t chamber=0; chamber<AliTRDgeometry::kNcham; ++chamber)
101 {
102 for (Int_t sector=0; sector<AliTRDgeometry::kNsect; ++sector)
103 {
104 AliTRDCalROC *calROC = calPad->GetCalROC(plane, chamber, sector);
105 for (Int_t channel=0; channel<calROC->GetNchannels(); ++channel)
106 calROC->SetValue(channel, value);
107 }
108 }
109 }
110
111 return calPad;
112}
113
469aa725 114AliTRDCalPIDLQ* CreatePIDLQObject()
115{
3d865241 116 AliTRDCalPIDLQ* pid = new AliTRDCalPIDLQ("pidobject", "pidobject");
469aa725 117 pid->ReadData("$ALICE_ROOT/TRD/TRDdEdxHistogramsV1.root");
118 pid->SetMeanChargeRatio(1.0); // The factor is the ratio of Mean of pi charge dist.
119 // for the New TRD code divided by the Mean of pi charge
120 // dist. given in AliTRDCalPIDLQ object
121
122 return pid;
123}
124
3551db50 125AliCDBMetaData* CreateMetaObject(const char* objectClassName)
126{
127 AliCDBMetaData *md1= new AliCDBMetaData();
128 md1->SetObjectClassName(objectClassName);
129 md1->SetResponsible("Jan Fiete Grosse-Oetringhaus");
130 md1->SetBeamPeriod(1);
131 md1->SetAliRootVersion("05-06-00"); //root version
132 md1->SetComment("The dummy values in this calibration file are for testing only");
133
134 return md1;
135}
136
137void StoreObject(const char* cdbPath, TObject* object, AliCDBMetaData* metaData)
138{
139 AliCDBId id1(cdbPath, gkDummyRun, gkDummyRun);
140 gStorLoc->Put(object, id1, metaData);
141}
142
143
144void AliTRDCreateDummyCDB()
145{
146 cout << endl << "TRD :: Creating dummy CDB with event number " << gkDummyRun << endl;
147
148 AliCDBManager *man = AliCDBManager::Instance();
149 gStorLoc = man->GetStorage("local://$ALICE_ROOT");
150 if (!gStorLoc)
151 return;
152
153 TObject* obj = 0;
154 AliCDBMetaData* metaData = 0;
155
156 metaData = CreateMetaObject("AliTRDCalPad");
157
158 obj = CreatePadObject("LocalVdrift","TRD drift velocities (local variations)", 1);
159 StoreObject("TRD/Calib/LocalVdrift", obj, metaData);
160
161 obj = CreatePadObject("LocalT0","T0 (local variations)", 1);
162 StoreObject("TRD/Calib/LocalT0", obj, metaData);
163
164 obj = CreatePadObject("GainFactor","GainFactor", 1);
165 StoreObject("TRD/Calib/GainFactor", obj, metaData);
166
6270bbff 167 obj = CreatePRFWidthObject();
3551db50 168 StoreObject("TRD/Calib/PRFWidth", obj, metaData);
169
170 metaData = CreateMetaObject("AliTRDCalDet");
171
172 obj = CreateDetObject("ChamberVdrift","TRD drift velocities (detector value)", 1.5);
173 StoreObject("TRD/Calib/ChamberVdrift", obj, metaData);
174
175 obj = CreateDetObject("ChamberT0","T0 (detector value)", 0);
176 StoreObject("TRD/Calib/ChamberT0", obj, metaData);
177
178 metaData = CreateMetaObject("AliTRDCalGlobals");
179 obj = CreateGlobalsObject();
180 StoreObject("TRD/Calib/Globals", obj, metaData);
181
3d865241 182 metaData = CreateMetaObject("AliTRDCalChamberPos");
3551db50 183 obj = CreateChamberObject();
184 StoreObject("TRD/Calib/Chamber", obj, metaData);
185
3d865241 186 metaData = CreateMetaObject("AliTRDCalStackPos");
3551db50 187 obj = CreateStackObject();
188 StoreObject("TRD/Calib/Stack", obj, metaData);
3d865241 189
469aa725 190 metaData = CreateMetaObject("AliTRDCalPIDLQ");
191 obj = CreatePIDLQObject();
192 StoreObject("TRD/Calib/PIDLQ", obj, metaData);
3551db50 193}