return;
}
- TClonesArray *digits = new TClonesArray("AliTOFdigit",10000);
+ TClonesArray staticdigits("AliTOFdigit",10000);
+ staticdigits.Clear();
+ TClonesArray *digits =&staticdigits;
branch->SetAddress(&digits);
ResetRecpoint();
AliInfo(Form("Execution time to read TOF digits and to write TOF clusters : R:%.4fs C:%.4fs",
stopwatch.RealTime(),stopwatch.CpuTime()));
- digits->Delete();
- delete digits;
}
//______________________________________________________________________________
return;
}
- TClonesArray *digits = new TClonesArray("AliTOFdigit",10000);
+ TClonesArray staticdigits("AliTOFdigit",10000);
+ staticdigits.Clear();
+ TClonesArray *digits = & staticdigits;
branch->SetAddress(&digits);
ResetRecpoint();
AliInfo(Form("Execution time to read TOF digits and to write TOF clusters : R:%.4fs C:%.4fs",
stopwatch.RealTime(),stopwatch.CpuTime()));
- digits->Delete();
- delete digits;
}
//______________________________________________________________________________
//___________________________________________
AliTOFDigitizer::AliTOFDigitizer() :
AliDigitizer(),
- fDigits(0x0),
- fSDigitsArray(0x0),
+ fDigits(new TClonesArray("AliTOFdigit",4000)),
+ fSDigitsArray(new TClonesArray("AliTOFSDigit",1000)),
fhitMap(0x0),
fCalib(new AliTOFcalib())
{
//___________________________________________
AliTOFDigitizer::AliTOFDigitizer(AliRunDigitizer* manager):
AliDigitizer(manager),
- fDigits(0x0),
- fSDigitsArray(0x0),
+ fDigits(new TClonesArray("AliTOFdigit",4000)),
+ fSDigitsArray(new TClonesArray("AliTOFSDigit",1000)),
fhitMap(0x0),
fCalib(new AliTOFcalib())
{
{
// Destructor
delete fCalib;
+ if (fDigits){
+ fDigits->Delete();
+ delete fDigits;
+ fDigits=0x0;
+ }
+ if (fSDigitsArray){
+ fSDigitsArray->Delete();
+ delete fSDigitsArray;
+ fSDigitsArray=0x0;
+ }
}
//---------------------------------------------------------------------
//Make branches
char branchname[20];
sprintf (branchname, "%s", tof->GetName ());
-
- fDigits=new TClonesArray("AliTOFdigit",4000);
AliRunLoader* outrl = AliRunLoader::GetRunLoader(fManager->GetOutputFolderName());
if (outrl == 0x0)
outgime->WriteDigits("OVERWRITE");
outgime->UnloadDigits();
- fDigits->Delete();
- delete fDigits;
+ fDigits->Clear();
}
// SDigits from different files are assumed to
// be created with the same simulation parameters.
+ // creating the TClonesArray to store the digits
+ static TClonesArray sdigitsClonesArray("AliTOFSDigit", 1000);
+ sdigitsClonesArray.Clear();
+
// get the treeS from manager
AliRunLoader* rl = AliRunLoader::GetRunLoader(fManager->GetInputFolderName(inputFile));
if (rl == 0x0)
}
}
// get the branch TOF inside the treeS
- TClonesArray * sdigitsDummyContainer= new TClonesArray("AliTOFSDigit", 1000);
-
+ TClonesArray * sdigitsDummyContainer=&sdigitsClonesArray;
// check if the branch exist
TBranch* tofBranch=currentTreeS->GetBranch("TOF");
} // if (hitMap->TestHit(vol) != kEmpty)
} // for (Int_t k=0; k<ndig; k++)
- sdigitsDummyContainer->Delete();
} // end loop on entries
- delete sdigitsDummyContainer;
-
}
return;
}
- TClonesArray * hits = new TClonesArray("AliTOFhitT0", 1000);
- TClonesArray * dummy = new TClonesArray("AliTOFhitT0", 1000);
+ static TClonesArray statichits("AliTOFhitT0", 1000);
+ statichits.Clear();
+ TClonesArray *hits = &statichits;
+ static TClonesArray staticdummy("AliTOFhitT0", 1000);
+ staticdummy.Clear();
+ TClonesArray *dummy = &staticdummy;
branch->SetAddress(&dummy);
Int_t index = 0 ;
for (Int_t ientry = 0 ; ientry < branch->GetEntries() ; ientry++) {
}
}
- dummy->Delete();
- delete dummy;
MakeHits(hits) ;
}
{
// reconstruct clusters from Raw Data
- AliTOFClusterFinder tofClus(fTOFcalib);
+ static AliTOFClusterFinder tofClus(fTOFcalib);
tofClus.Digits2RecPoints(rawReader, clustersTree);
}
// reconstruct clusters from Raw Data
AliDebug(2,Form("Global Event loop mode: Creating Recpoints from Digits Tree"));
- AliTOFClusterFinder tofClus(fTOFcalib);
+ static AliTOFClusterFinder tofClus(fTOFcalib);
tofClus.Digits2RecPoints(digitsTree, clustersTree);
}