From 349db5e753204c5a23bed574647a89eb383b02db Mon Sep 17 00:00:00 2001 From: schutz Date: Thu, 30 May 2002 14:44:13 +0000 Subject: [PATCH] Improved the mechanism to divert SDigits into a separate file. --- PHOS/AliPHOSDigitizer.cxx | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/PHOS/AliPHOSDigitizer.cxx b/PHOS/AliPHOSDigitizer.cxx index 5b7f42ffb18..0ac1e94b6e1 100644 --- a/PHOS/AliPHOSDigitizer.cxx +++ b/PHOS/AliPHOSDigitizer.cxx @@ -606,7 +606,8 @@ void AliPHOSDigitizer::SetSplitFile(const TString splitFileName) const TDirectory * cwd = gDirectory ; TFile * splitFile = gAlice->InitTreeFile("D",splitFileName.Data()); splitFile->cd() ; - gAlice->Write(); + if ( !splitFile->Get("gAlice") ) + gAlice->Write(); TTree *treeE = gAlice->TreeE(); if (!treeE) { @@ -615,19 +616,24 @@ void AliPHOSDigitizer::SetSplitFile(const TString splitFileName) const } // copy TreeE - AliHeader *header = new AliHeader(); - treeE->SetBranchAddress("Header", &header); - treeE->SetBranchStatus("*",1); - TTree *treeENew = treeE->CloneTree(); - treeENew->Write(); - + if ( !splitFile->Get("TreeE") ) { + AliHeader *header = new AliHeader(); + treeE->SetBranchAddress("Header", &header); + treeE->SetBranchStatus("*",1); + TTree *treeENew = treeE->CloneTree(); + treeENew->Write(); + } + // copy AliceGeom - TGeometry *AliceGeom = static_cast(cwd->Get("AliceGeom")); - if (!AliceGeom) { - cerr << "ERROR: AliPHOSDigitizer::SetSplitFile -> AliceGeom was not found in the input file "<Get("AliceGeom") ) { + TGeometry *AliceGeom = static_cast(cwd->Get("AliceGeom")); + if (!AliceGeom) { + cerr << "ERROR: AliPHOSDigitizer::SetSplitFile -> AliceGeom was not found in the input file "<Write(); } - AliceGeom->Write(); + cwd->cd() ; gAlice->MakeTree("D",splitFile); cout << "INFO: AliPHOSDigitizer::SetSPlitMode -> Digits will be stored in " << splitFileName.Data() << endl ; -- 2.39.3