]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TOF/CreateCalibPars_CalibHisto.C
cd20f0e341c8ad0500f61d7ac7e63b1396d15088
[u/mrichter/AliRoot.git] / TOF / CreateCalibPars_CalibHisto.C
1 void CreateCalibPars_CalibHisto(){
2   // Create TOF Calibration Object from AliTOFcalibHisto class
3   // and write it on CDB
4
5   AliTOFcalib *tofcalib = new AliTOFcalib();
6   tofcalib->CreateCalArrays();
7   TObjArray *tofCalOffline = (TObjArray*) tofcalib->GetTOFCalArrayOffline(); 
8
9   /* get calib histo andl and load params */
10   AliTOFcalibHisto calibHisto;
11   calibHisto.LoadCalibPar();
12
13   /* turn time-slewing correction off to only retrieve constants */
14   calibHisto.SetFullCorrectionFlag(AliTOFcalibHisto::kTimeSlewingCorr, kFALSE);
15
16   /* OCDB init */
17   Float_t par[6] = {0.,0.,0.,0.,0.,0.};
18   AliCDBManager *man = AliCDBManager::Instance();
19   man->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
20   Int_t nChannels = AliTOFGeometry::NSectors()*(2*(AliTOFGeometry::NStripC()+AliTOFGeometry::NStripB())+AliTOFGeometry::NStripA())*AliTOFGeometry::NpadZ()*AliTOFGeometry::NpadX();
21   
22   /* common time-slewing params */
23   for (Int_t iSlew = 1; iSlew < 6; iSlew++) 
24     par[iSlew] = calibHisto.GetCalibPar(AliTOFcalibHisto::kTimeSlewingPar, iSlew);
25   
26   /* channel-related params */
27   for (Int_t ipad = 0 ; ipad<nChannels; ipad++){
28     AliTOFChannelOffline *calChannelOffline = (AliTOFChannelOffline*)tofCalOffline->At(ipad);
29     par[0] = calibHisto.GetFullCorrection(ipad);
30     calChannelOffline->SetSlewPar(par);
31   }
32
33   /* write */
34   tofcalib->WriteParOfflineOnCDB("TOF/Calib","valid",0,AliCDBRunRange::Infinity());
35 }
36
37