fStack(0),
fMCParticles(new TClonesArray("AliMCParticle",1000)),
fMCParticleMap(0),
- fHeader(0),
+ fHeader(new AliHeader()),
fTRBuffer(0),
fTrackReferences(new TClonesArray("AliTrackReference", 1000)),
fTreeTR(0),
fStack(0),
fMCParticles(0),
fMCParticleMap(0),
- fHeader(0),
+ fHeader(new AliHeader()),
fTRBuffer(0),
fTrackReferences(0),
fTreeTR(0),
fTmpTreeTR(0),
fTmpFileTR(0),
fNprimaries(-1),
- fNparticles(-1)
+ fNparticles(-1)
{
// Copy constructor
}
// This is a cache for the TParticles converted to MCParticles on user request
if (fMCParticleMap) {
fMCParticleMap->Clear();
- if (fNparticles>0) fMCParticleMap->Expand(fNparticles);}
+ fMCParticles->Delete();
+ if (fNparticles>0) fMCParticleMap->Expand(fNparticles);
+ }
else
fMCParticleMap = new TRefArray(fNparticles);
-
}
void AliMCEvent::ConnectTreeTR (TTree* tree)
void AliMCEvent::Clean()
{
// Clean-up before new trees are connected
-
- if (fHeader) {
- delete fHeader;
- fHeader = 0;
- }
-
- delete fStack;
+// if (fHeader) {
+// delete fHeader;
+// fHeader = 0;
+// }
+
+ delete fStack; fStack = 0;
// Clear TR
if (fTRBuffer) {
- fTRBuffer->Clear();
+ fTRBuffer->Delete();
delete fTRBuffer;
fTRBuffer = 0;
}
void AliMCEvent::FinishEvent()
{
// Clean-up after event
- fStack->Reset(0);
- fMCParticles->Delete();
- fMCParticleMap->Delete();
- fTrackReferences->Clear();
+ //
+ fStack->Reset(0);
+ fMCParticles->Delete();
+ fMCParticleMap->Clear();
+ if (fTRBuffer)
+ fTRBuffer->Delete();
+ fTrackReferences->Delete();
+ fNparticles = -1;
+ fNprimaries = -1;
+ fStack = 0;
+
}
} // hits
} // branches
fTmpTreeTR->Fill();
- fTRBuffer->Clear();
+ fTRBuffer->Delete();
ifills++;
} // daughters
} // has hits
} // entries
it++;
fTmpTreeTR->Fill();
- fTRBuffer->Clear();
+ fTRBuffer->Delete();
ifills++;
} // tracks
// Check