]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TOF/CreateOnlineCalibPars.C
Resolving all symbols in the library
[u/mrichter/AliRoot.git] / TOF / CreateOnlineCalibPars.C
index 3b14b85118c07b83c5d7c133c9cf93ea1a078e2d..83df62d18a2960c7fb343cd8175b0c4c00e31180 100644 (file)
@@ -1,13 +1,23 @@
 void CreateOnlineCalibPars(){
+
   // Create TOF Online Calibration Object for reconstruction
-  // and write it on CDB
+  // and write it on CDB;
+  // NB: only delay set, status still ok
+  // Both old type objects (using TObjArrays) and new type objects (using AliTOFChannelOnlineArray/
+  // AliTOFChannelOnlineStatusArray are written
+
   AliTOFcalib *tofcalib = new AliTOFcalib();
   tofcalib->CreateCalArrays();
   TObjArray *tofCalOnline = (TObjArray*) tofcalib->GetTOFCalArrayOnline(); 
-  // Write the offline calibration object on CDB
+  TObjArray *tofCalOnlinePulser = (TObjArray*) tofcalib->GetTOFCalArrayOnlinePulser(); 
+  TObjArray *tofCalOnlineNoise = (TObjArray*) tofcalib->GetTOFCalArrayOnlineNoise(); 
+  TObjArray *tofCalOnlineHW = (TObjArray*) tofcalib->GetTOFCalArrayOnlineHW(); 
+  AliTOFChannelOnlineArray *delayObj = (AliTOFChannelOnlineArray*) tofcalib->GetTOFOnlineDelay();
+  AliTOFChannelOnlineStatusArray *status = (AliTOFChannelOnlineStatusArray*) tofcalib->GetTOFOnlineStatus();
+  // Write the online calibration object on CDB
 
   AliCDBManager *man = AliCDBManager::Instance();
-  man->SetDefaultStorage("local://$ALICE");
+  man->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
   Int_t nChannels = AliTOFGeometry::NSectors()*(2*(AliTOFGeometry::NStripC()+AliTOFGeometry::NStripB())+AliTOFGeometry::NStripA())*AliTOFGeometry::NpadZ()*AliTOFGeometry::NpadX();
   Float_t delay=0.;
   Float_t meanDelay=0.3;
@@ -15,9 +25,24 @@ void CreateOnlineCalibPars(){
   TRandom *rnd   = new TRandom(4357);
   for (Int_t ipad = 0 ; ipad<nChannels; ipad++){
     AliTOFChannelOnline *calChannelOnline = (AliTOFChannelOnline*)tofCalOnline->At(ipad);
+    AliTOFChannelOnlineStatus *calChannelOnlinePulser = (AliTOFChannelOnlineStatus*)tofCalOnlinePulser->At(ipad);
+    AliTOFChannelOnlineStatus *calChannelOnlineNoise = (AliTOFChannelOnlineStatus*)tofCalOnlineNoise->At(ipad);
+    AliTOFChannelOnlineStatus *calChannelOnlineHW = (AliTOFChannelOnlineStatus*)tofCalOnlineHW->At(ipad);
     delay = rnd->Gaus(meanDelay,sigmaDelay);
+    delayObj->SetDelay(ipad,delay);
     calChannelOnline->SetDelay(delay);
+    calChannelOnlinePulser->SetStatus(AliTOFChannelOnlineStatus::kTOFPulserOk);
+    calChannelOnlineNoise->SetStatus(AliTOFChannelOnlineStatus::kTOFNoiseOk);
+    calChannelOnlineHW->SetStatus(AliTOFChannelOnlineStatus::kTOFHWOk);
+    status->SetHWStatus(ipad,AliTOFChannelOnlineStatusArray::kTOFHWOk);
+    status->SetPulserStatus(ipad,AliTOFChannelOnlineStatusArray::kTOFPulserOk);
+    status->SetNoiseStatus(ipad,AliTOFChannelOnlineStatusArray::kTOFNoiseOk);
   }
-  tofcalib->WriteParOnlineOnCDB("TOF/Calib");
+  tofcalib->WriteParOnlineDelayOnCDB("TOF/Calib");   // new obj
+  tofcalib->WriteParOnlineStatusOnCDB("TOF/Calib");  // new obj
+  tofcalib->WriteParOnlineOnCDB("TOF/Calib");        // old object
+  tofcalib->WriteParOnlinePulserOnCDB("TOF/Calib");  // old obj
+  tofcalib->WriteParOnlineNoiseOnCDB("TOF/Calib");   // old obj
+  tofcalib->WriteParOnlineHWOnCDB("TOF/Calib");      // old obj
   return;
 }