fRunLocalReconstruction("ALL"),
fRunTracking("ALL"),
fFillESD("ALL"),
+ fDeleteRecPoints(""),
+ fDeleteDigits(""),
fLoadCDB(""),
fUseTrackingErrorsForAlignment(""),
fGAliceFileName(gAliceFilename),
fRunLocalReconstruction(rec.fRunLocalReconstruction),
fRunTracking(rec.fRunTracking),
fFillESD(rec.fFillESD),
+ fDeleteRecPoints(""),
+ fDeleteDigits(""),
fLoadCDB(rec.fLoadCDB),
fUseTrackingErrorsForAlignment(rec.fUseTrackingErrorsForAlignment),
fGAliceFileName(rec.fGAliceFileName),
fRunLocalReconstruction = rec.fRunLocalReconstruction;
fRunTracking = rec.fRunTracking;
fFillESD = rec.fFillESD;
+ fDeleteRecPoints = rec.fDeleteRecPoints;
+ fDeleteDigits = rec.fDeleteDigits;
fLoadCDB = rec.fLoadCDB;
fUseTrackingErrorsForAlignment = rec.fUseTrackingErrorsForAlignment;
fGAliceFileName = rec.fGAliceFileName;
fRunTracking = MatchDetectorList(fRunTracking,detMask);
fFillESD = MatchDetectorList(fFillESD,detMask);
fQADetectors = MatchDetectorList(fQADetectors,detMask);
+ fDeleteRecPoints = MatchDetectorList(fDeleteRecPoints,detMask);
+ fDeleteDigits = MatchDetectorList(fDeleteDigits,detMask);
fLoadCDB.Form("%s %s %s %s",
fRunLocalReconstruction.Data(),
fRunTracking.Data(),
if (fRunQA || fRunGlobalQA)
AliQAManager::QAManager()->Increment() ;
- return kTRUE;
+ DeleteRecPoints(fDeleteRecPoints);
+ DeleteDigits(fDeleteDigits);
+ //
+ return kTRUE;
}
//_____________________________________________________________________________
new (fesdf) AliESDfriend(); // Reset...
fesdf->SetSkipBit(kTRUE);
}
-
+ //
ftreeF->Fill();
}
+
+//_________________________________________________________________
+void AliReconstruction::DeleteDigits(const TString& detectors)
+{
+ // delete requested digit files produced at current event
+ static int iEvent = 0;
+ if (detectors.IsNull()) return;
+ TString detStr = detectors;
+ AliInfo(Form("Deleting Digits: %s",detectors.Data()));
+
+ for (Int_t iDet = 0; iDet < kNDetectors; iDet++) {
+ gSystem->Exec(Form("if [ -e %s.Digits.root ]; then\nrm %s.Digits.root\nfi",
+ fgkDetectorName[iDet],fgkDetectorName[iDet]));
+ }
+ AliSysInfo::AddStamp(Form("DelDigits_%d",iEvent), 0,0,iEvent);
+ iEvent++;
+}
+
+//_________________________________________________________________
+void AliReconstruction::DeleteRecPoints(const TString& detectors)
+{
+ // delete requested recpoint files produced at current event
+ static int iEvent = 0;
+ if (detectors.IsNull()) return;
+ TString detStr = detectors;
+ AliInfo(Form("Deleting Recpoints: %s",detectors.Data()));
+ //
+ for (Int_t iDet = 0; iDet < kNDetectors; iDet++) {
+ gSystem->Exec(Form("if [ -e %s.RecPoints.root ]; then\nrm %s.RecPoints.root\nfi",
+ fgkDetectorName[iDet],fgkDetectorName[iDet]));
+ }
+ AliSysInfo::AddStamp(Form("DelRecPoints_%d",iEvent), 0,0,iEvent);
+ iEvent++;
+}
SetRunLocalReconstruction(detectors);
SetRunTracking(detectors);
SetFillESD(detectors);};
+ void SetDeleteRecPoints(const char* dets) {fDeleteRecPoints = dets;}
+ void SetDeleteDigits(const char* dets) {fDeleteDigits = dets;}
void SetUseTrackingErrorsForAlignment(const char* detectors)
{fUseTrackingErrorsForAlignment = detectors;};
void SetLoadAlignFromCDB(Bool_t load) {fLoadAlignFromCDB = load;};
Bool_t FillTriggerESD(AliESDEvent*& esd);
Bool_t FillTriggerScalers(AliESDEvent*& esd);
Bool_t FillRawEventHeaderESD(AliESDEvent*& esd);
+ void DeleteRecPoints(const TString& detectors);
+ void DeleteDigits(const TString& detectors);
Bool_t IsSelected(TString detName, TString& detectors) const;
Bool_t InitRunLoader();
TString fRunLocalReconstruction; // run the local reconstruction for these detectors
TString fRunTracking; // run the tracking for these detectors
TString fFillESD; // fill ESD for these detectors
+ TString fDeleteRecPoints; // delete recpoints after each event
+ TString fDeleteDigits; // delete digits after each event
TString fLoadCDB; // prefetch CDB entries and init reco-params for these detectors
TString fUseTrackingErrorsForAlignment; // for these detectors
TString fGAliceFileName; // name of the galice file