ROOT logo
void CreateOnlineCalibPars(){

  // Create TOF Online Calibration Object for reconstruction
  // 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(); 
  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_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;
  Float_t sigmaDelay=0.08;
  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->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;
}
 CreateOnlineCalibPars.C:1
 CreateOnlineCalibPars.C:2
 CreateOnlineCalibPars.C:3
 CreateOnlineCalibPars.C:4
 CreateOnlineCalibPars.C:5
 CreateOnlineCalibPars.C:6
 CreateOnlineCalibPars.C:7
 CreateOnlineCalibPars.C:8
 CreateOnlineCalibPars.C:9
 CreateOnlineCalibPars.C:10
 CreateOnlineCalibPars.C:11
 CreateOnlineCalibPars.C:12
 CreateOnlineCalibPars.C:13
 CreateOnlineCalibPars.C:14
 CreateOnlineCalibPars.C:15
 CreateOnlineCalibPars.C:16
 CreateOnlineCalibPars.C:17
 CreateOnlineCalibPars.C:18
 CreateOnlineCalibPars.C:19
 CreateOnlineCalibPars.C:20
 CreateOnlineCalibPars.C:21
 CreateOnlineCalibPars.C:22
 CreateOnlineCalibPars.C:23
 CreateOnlineCalibPars.C:24
 CreateOnlineCalibPars.C:25
 CreateOnlineCalibPars.C:26
 CreateOnlineCalibPars.C:27
 CreateOnlineCalibPars.C:28
 CreateOnlineCalibPars.C:29
 CreateOnlineCalibPars.C:30
 CreateOnlineCalibPars.C:31
 CreateOnlineCalibPars.C:32
 CreateOnlineCalibPars.C:33
 CreateOnlineCalibPars.C:34
 CreateOnlineCalibPars.C:35
 CreateOnlineCalibPars.C:36
 CreateOnlineCalibPars.C:37
 CreateOnlineCalibPars.C:38
 CreateOnlineCalibPars.C:39
 CreateOnlineCalibPars.C:40
 CreateOnlineCalibPars.C:41
 CreateOnlineCalibPars.C:42
 CreateOnlineCalibPars.C:43
 CreateOnlineCalibPars.C:44
 CreateOnlineCalibPars.C:45
 CreateOnlineCalibPars.C:46
 CreateOnlineCalibPars.C:47
 CreateOnlineCalibPars.C:48
 CreateOnlineCalibPars.C:49