X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TOF%2FCreateOnlineCalibPars.C;h=83df62d18a2960c7fb343cd8175b0c4c00e31180;hb=4e5376723f44a5df836dc7cdace74fe1df4dca61;hp=aab5dcc12f1eb2ccf8c91a036201e5a719369ac5;hpb=28c5479a05682ab0e1543d734c01d142af8ee79a;p=u%2Fmrichter%2FAliRoot.git diff --git a/TOF/CreateOnlineCalibPars.C b/TOF/CreateOnlineCalibPars.C index aab5dcc12f1..83df62d18a2 100644 --- a/TOF/CreateOnlineCalibPars.C +++ b/TOF/CreateOnlineCalibPars.C @@ -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,10 +25,24 @@ void CreateOnlineCalibPars(){ TRandom *rnd = new TRandom(4357); for (Int_t ipad = 0 ; ipadAt(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); - calChannelOnline->SetStatus(AliTOFChannelOnline::kTOFOnlineOk); + 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; }