CMake: removing qpythia from the depedencies
[u/mrichter/AliRoot.git] / TOF / CreateCalibPars_Miscalibrated.C
index cb876ec..6eb44d2 100644 (file)
@@ -1,24 +1,24 @@
 void CreateCalibPars_Miscalibrated(){
   // Create TOF Calibration Object for miscalibrated detector
   // and write it on CDB
-  AliTOFGeometry *geom = new AliTOFGeometryV5(); 
-  AliTOFcalib *tofcalib = new AliTOFcalib(geom);
-  AliTOFCal *tofCal= new AliTOFCal(geom);
-  tofCal->CreateArray();
-
+  AliTOFcalib *tofcalib = new AliTOFcalib();
+  tofcalib->CreateCalArrays();
+  TObjArray *tofCalOffline = (TObjArray*) tofcalib->GetTOFCalArrayOffline(); 
   // Input data for decalibration
 
   TFile f("$ALICE_ROOT/TOF/data/spectrum.root","READ");  
 
-  TH1F *hTimeToTFit=  (TH1F*)f.Get("TimeToTFit");
-  TF1  *fit=hTimeToTFit->GetFunction("poly5");
+  TH1F *hTimeToTFit=  (TH1F*)f.Get("hTimeToTLim");
+  TF1  *fit=hTimeToTFit->GetFunction("pol5");
   
   // Slewing parameters (same for all channels)
 
   Float_t par[6] = {0.,0.,0.,0.,0.,0.};
+  Float_t kpar=0;
   for(Int_t i =0;i<6;i++){
     par[i]=fit->GetParameter(i);
-    //    cout << " Slewing parameters=" << par[i] << endl;
+    kpar=par[0];
+    cout << " Slewing parameters=" << par[i] << endl;
   }
 
   // Global time offset (randomly gen, gaussian with mean = 0.3, sig=0.08 ns)
@@ -29,19 +29,22 @@ void CreateCalibPars_Miscalibrated(){
 
   // ToT spectrum 
 
-  TH1F *hToT=  (TH1F*)f.Get("ToT");
+  TH1F *hToT=  (TH1F*)f.Get("hToTLim");
 
   // Fill the Sim calibration object
 
+  AliCDBManager *man = AliCDBManager::Instance();
+  man->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
   TRandom *rnd   = new TRandom(4357);
-  for (Int_t ipad = 0 ; ipad<tofCal->NPads(); ipad++){
-    AliTOFChannel *calChannel = tofCal->GetChannel(ipad);
-    calChannel->SetSlewPar(par);
+  Int_t nChannels = AliTOFGeometry::NSectors()*(2*(AliTOFGeometry::NStripC()+AliTOFGeometry::NStripB())+AliTOFGeometry::NStripA())*AliTOFGeometry::NpadZ()*AliTOFGeometry::NpadX();
+  for (Int_t ipad = 0 ; ipad<nChannels; ipad++){
+    AliTOFChannelOffline *calChannelOffline = (AliTOFChannelOffline*)tofCalOffline->At(ipad);
     delay=rnd->Gaus(meanDelay,sigmaDelay);
-    // cout << " delay=" << delay << endl;
-    calChannel->SetDelay(delay);
+    par[0]=kpar+delay;
+    calChannelOffline->SetSlewPar(par);
   }
-  tofcalib->WriteSimParOnCDB("TOF/Calib",0,0,tofCal,hToT);
+  tofcalib->WriteParOfflineOnCDB("TOF/Calib","valid",0,AliCDBRunRange::Infinity());
+  tofcalib->WriteSimHistoOnCDB("TOF/Calib",0,AliCDBRunRange::Infinity(),hToT);
   f.Close();
 }