//QA
AliQADataMakerSteer qas ;
if ( fRunQA && fRawReader)
- qas.Run("ALL", fRawReader) ;
+ qas.Run(fRunLocalReconstruction, fRawReader) ;
// checking the QA of previous steps
CheckQA() ;
nTracks=esd->GetNumberOfTracks();
nV0s=esd->GetNumberOfV0s();
AliInfo
- (Form("Number of ESD tracks and V0s after cleaning %d",nTracks,nV0s));
+ (Form("Number of ESD tracks and V0s after cleaning %d %d",nTracks,nV0s));
return rc;
}
caloClusters.Expand(jClusters); // resize TObjArray to 'remove' slots for pseudo clusters
// end of loop on calo clusters
- // fill PHOS cell info
-
- AliESDCaloCells &esdEMcells = *(esd->GetEMCALCells());
- Int_t nEMcell = esdEMcells.GetNumberOfCells() ;
-
- AliAODCaloCells &aodEMcells = *(aod->GetEMCALCells());
- aodEMcells.CreateContainer(nEMcell);
- aodEMcells.SetType(AliAODCaloCells::kEMCAL);
- for (Int_t iCell = 0; iCell < nEMcell; iCell++) {
- aodEMcells.SetCell(iCell,esdEMcells.GetCellNumber(iCell),esdEMcells.GetAmplitude(iCell));
+ // fill EMCAL cell info
+ if (esd->GetEMCALCells()) { // protection against missing ESD information
+ AliESDCaloCells &esdEMcells = *(esd->GetEMCALCells());
+ Int_t nEMcell = esdEMcells.GetNumberOfCells() ;
+
+ AliAODCaloCells &aodEMcells = *(aod->GetEMCALCells());
+ aodEMcells.CreateContainer(nEMcell);
+ aodEMcells.SetType(AliAODCaloCells::kEMCAL);
+ for (Int_t iCell = 0; iCell < nEMcell; iCell++) {
+ aodEMcells.SetCell(iCell,esdEMcells.GetCellNumber(iCell),esdEMcells.GetAmplitude(iCell));
+ }
+ aodEMcells.Sort();
}
- aodEMcells.Sort();
// fill PHOS cell info
-
- AliESDCaloCells &esdPHcells = *(esd->GetPHOSCells());
- Int_t nPHcell = esdPHcells.GetNumberOfCells() ;
-
- AliAODCaloCells &aodPHcells = *(aod->GetPHOSCells());
- aodPHcells.CreateContainer(nPHcell);
- aodPHcells.SetType(AliAODCaloCells::kPHOS);
- for (Int_t iCell = 0; iCell < nPHcell; iCell++) {
- aodPHcells.SetCell(iCell,esdPHcells.GetCellNumber(iCell),esdPHcells.GetAmplitude(iCell));
+ if (esd->GetPHOSCells()) { // protection against missing ESD information
+ AliESDCaloCells &esdPHcells = *(esd->GetPHOSCells());
+ Int_t nPHcell = esdPHcells.GetNumberOfCells() ;
+
+ AliAODCaloCells &aodPHcells = *(aod->GetPHOSCells());
+ aodPHcells.CreateContainer(nPHcell);
+ aodPHcells.SetType(AliAODCaloCells::kPHOS);
+ for (Int_t iCell = 0; iCell < nPHcell; iCell++) {
+ aodPHcells.SetCell(iCell,esdPHcells.GetCellNumber(iCell),esdPHcells.GetAmplitude(iCell));
+ }
+ aodPHcells.Sort();
}
- aodPHcells.Sort();
// tracklets
AliAODTracklets &SPDTracklets = *(aod->GetTracklets());
Int_t isp2 = 0;
while (isp < nspdet) {
Bool_t isvalid;
- if(IsSelected(fgkDetectorName[iDet],fUseTrackingErrorsForAlignment)) {
- isvalid = tracker->GetTrackPointTrackingError(idx[isp2],p,track);
+ TString dets = fgkDetectorName[iDet];
+ if ((fUseTrackingErrorsForAlignment.CompareTo(dets) == 0) ||
+ fUseTrackingErrorsForAlignment.BeginsWith(dets+" ") ||
+ fUseTrackingErrorsForAlignment.EndsWith(" "+dets) ||
+ fUseTrackingErrorsForAlignment.Contains(" "+dets+" ")) {
+ isvalid = tracker->GetTrackPointTrackingError(idx[isp2],p,track);
} else {
isvalid = tracker->GetTrackPoint(idx[isp2],p);
}