if (!fESDfriend) {
return;
}
+ if (fESDfriend->TestSkipBit()) return;
if (fESD->GetNumberOfTracks()<kMinTracks) return; //not enough tracks
AliDebug(4,Form("Event number in current file: %d",event->GetEventNumberInFile()));
//
static Bool_t init=kFALSE;
if (!init){
init = kTRUE; // way around for PROOF - to be investigated
- MakeFitHistos();
+ UpdateFitHistos();
}
//
for (Int_t id=0; id<336; id++){
//
//
TH1F * hisdz = (TH1F*)fDeltaZ.At(id);
- if (!hisdz) MakeFitHistos();
+ if (!hisdz) UpdateFitHistos();
hisdz = (TH1F*)fDeltaZ.At(id);
TH1F * hisP3 = (TH1F*)fDeltaP3.At(id);
TH1F * hisP4 = (TH1F*)fDeltaP4.At(id);
//==========================//
// Fill Residual Histograms //
//==========================//
- if (!fHisNclIn) MakeFitHistos();
+ if (!fHisNclIn) UpdateFitHistos();
TH2F *profy = (TH2F*)fDeltaYres.UncheckedAt(id);
TH2F *profz = (TH2F*)fDeltaZres.UncheckedAt(id);
if (!h &&hm &&hm->GetEntries()>0) {
h=(TH1F*)hm->Clone();
h->SetDirectory(0);
- fDeltaZ.AddAt(h,id);
+ fDeltaZ.AddAt(h,id);
}
- if (hm) h->Add(hm);
+ if (h && hm) h->Add(hm);
+
// merge fP3 histograms
hm = (TH1F*)cal->fDeltaP3.At(id);
h = (TH1F*)fDeltaP3.At(id);
h->SetDirectory(0);
fDeltaP3.AddAt(h,id);
}
- if (hm) h->Add(hm);
+ if (h && hm) h->Add(hm);
// merge fP4 histograms
hm = (TH1F*)cal->fDeltaP4.At(id);
h = (TH1F*)fDeltaP4.At(id);
h->SetDirectory(0);
fDeltaP4.AddAt(h,id);
}
- if (hm) h->Add(hm);
+ if (h&&hm) h->Add(hm);
//
// merge fDeltaPhi histograms
h->SetDirectory(0);
fDeltaPhi.AddAt(h,id);
}
- if (hm) h->Add(hm);
+ if (h&&hm) h->Add(hm);
// merge fDeltaPhiP histograms
hm = (TH1F*)cal->fDeltaPhiP.At(id);
h = (TH1F*)fDeltaPhiP.At(id);
h->SetDirectory(0);
fDeltaPhiP.AddAt(h,id);
}
- if (hm) h->Add(hm);
+ if (h&&hm) h->Add(hm);
// merge fSignals histograms
hm = (TH1F*)cal->fSignals.At(id);
h = (TH1F*)fSignals.At(id);
h->SetDirectory(0);
fSignals.AddAt(h,id);
}
- if (hm) h->Add(hm);
+ if (h&&hm) h->Add(hm);
//
//
// merge ProfileY histograms -0
return 0;
}
-void AliTPCcalibLaser::MakeFitHistos(){
+void AliTPCcalibLaser::MakeFitHistos(){
//
// Make a fit histograms
//
TH2F *profz = (TH2F*)fDeltaZres.UncheckedAt(id);
//TH2F *profy2 = (TH2F*)fDeltaYres2.UncheckedAt(id);
TH2F *profy2 = 0;
- TH2F *profz2 = (TH2F*)fDeltaZres2.UncheckedAt(id);
- TH2F *profyabs = (TH2F*)fDeltaYresAbs.UncheckedAt(id);
- TH2F *profzabs = (TH2F*)fDeltaYresAbs.UncheckedAt(id);
+ TH2F *profz2 = 0;//(TH2F*)fDeltaZres2.UncheckedAt(id);
+ TH2F *profyabs = 0; //(TH2F*)fDeltaYresAbs.UncheckedAt(id);
+ TH2F *profzabs = 0; //(TH2F*)fDeltaYresAbs.UncheckedAt(id);
// TH2F *profy3 = (TH2F*)fDeltaYres3.UncheckedAt(id);
//TH2F *profz3 = (TH2F*)fDeltaZres3.UncheckedAt(id);
if (!profy){
TH1F * hisdz = (TH1F*)fDeltaZ.At(id);
//TH1F * hisP3 = (TH1F*)fDeltaP3.At(id);
TH1F * hisP3 = 0;
- TH1F * hisP4 = (TH1F*)fDeltaP4.At(id);
+ TH1F * hisP4 = 0;
- TH1F * hisdphi = (TH1F*)fDeltaPhi.At(id);
- TH1F * hisdphiP = (TH1F*)fDeltaPhiP.At(id);
- TH1F * hisSignal = (TH1F*)fSignals.At(id);
+ TH1F * hisdphi = 0;//(TH1F*)fDeltaPhi.At(id);
+ TH1F * hisdphiP = 0;//(TH1F*)fDeltaPhiP.At(id);
+ TH1F * hisSignal = 0; //(TH1F*)fSignals.At(id);
if (!hisdz){
hisdz = new TH1F(Form("hisdz%d",id),Form("hisdz%d",id),1000,-10,10);
}
}
- SetBeamParameters(fBeamOffsetZOuter, fBeamSlopeZOuter, fBeamSectorOuter,2);
- SetBeamParameters(fBeamOffsetZInner, fBeamSlopeZInner, fBeamSectorInner,3);
- SetBeamParameters(fBeamOffsetYOuter, fBeamSlopeYOuter, fBeamSectorOuter,0);
- SetBeamParameters(fBeamOffsetYInner, fBeamSlopeYInner, fBeamSectorInner,1);
//
// Make THnSparse
//
}
}
+void AliTPCcalibLaser::UpdateFitHistos(){
+ //create the fit histos and set the beam parameters(needs OCDB access)
+ MakeFitHistos();
+ SetBeamParameters(fBeamOffsetZOuter, fBeamSlopeZOuter, fBeamSectorOuter,2);
+ SetBeamParameters(fBeamOffsetZInner, fBeamSlopeZInner, fBeamSectorInner,3);
+ SetBeamParameters(fBeamOffsetYOuter, fBeamSlopeYOuter, fBeamSectorOuter,0);
+ SetBeamParameters(fBeamOffsetYInner, fBeamSlopeYInner, fBeamSectorInner,1);
+}
+
void AliTPCcalibLaser::MergeFitHistos(AliTPCcalibLaser * laser){
//
// Merge content of histograms