//#include <TTree.h>
#include <TClonesArray.h>
#include <TVirtualMC.h>
+#include <TTree.h>
// --- Standard library ---
#include "AliPHOSImpact.h"
#include "AliPHOSvImpacts.h"
#include "AliRun.h"
+#include "AliLoader.h"
#include "AliMC.h"
#include "AliLog.h"
//____________________________________________________________________________
AliPHOSvImpacts::AliPHOSvImpacts():
- fEMCImpacts(0),
- fCPVImpacts(0),
- fPPSDImpacts(0)
+ fEMCImpacts(new TList),
+ fCPVImpacts(new TList),
+ fPPSDImpacts(new TList),
+ fNEMCImpacts(),
+ fNCPVImpacts(),
+ fNPPSDImpacts()
{
// ctor
}
AliPHOSv1(name,title),
fEMCImpacts(new TList),
fCPVImpacts(new TList),
- fPPSDImpacts(0)
+ fPPSDImpacts(0),
+ fNEMCImpacts(),
+ fNCPVImpacts(),
+ fNPPSDImpacts()
{
// ctor : title is used to identify the layout
//
nImpacts= fNCPVImpacts[module];
fNCPVImpacts[module]++ ;
}
+ else
+ AliFatal(Form("Wrong PHOS configuration: det=%s",det));
new((*impacts)[nImpacts]) AliPHOSImpact(shunt,primary,track,pid,p,xyz) ;
AliDebugClass(1,Form("Module %d %s: ",module,det));
if (AliLog::GetGlobalDebugLevel()>0)
- (dynamic_cast<AliPHOSImpact*>((impacts->At(nImpacts))))->Print();
+ (static_cast<AliPHOSImpact*>((impacts->At(nImpacts))))->Print();
}
//____________________________________________________________________________
Int_t bufferSize = 32000 ;
Int_t splitlevel = 0 ;
- TreeH()->Branch("PHOSEmcImpacts" , "TList", &fEMCImpacts , bufferSize, splitlevel);
- TreeH()->Branch("PHOSCpvImpacts" , "TList", &fCPVImpacts , bufferSize, splitlevel);
+ fLoader->TreeH()->Branch("PHOSEmcImpacts" , "TList", &fEMCImpacts , bufferSize, splitlevel);
+ fLoader->TreeH()->Branch("PHOSCpvImpacts" , "TList", &fCPVImpacts , bufferSize, splitlevel);
}
Int_t i;
for (i=0; i<GetGeometry()->GetNModules(); i++) {
- (dynamic_cast<TClonesArray*>(fEMCImpacts->At(i))) -> Clear();
+ (static_cast<TClonesArray*>(fEMCImpacts->At(i))) -> Clear();
fNEMCImpacts[i] = 0 ;
}
for (i=0; i<GetGeometry()->GetNModules(); i++) {
- (dynamic_cast<TClonesArray*>(fCPVImpacts->At(i))) -> Clear();
+ (static_cast<TClonesArray*>(fCPVImpacts->At(i))) -> Clear();
fNCPVImpacts[i] = 0 ;
}