#include <TLorentzVector.h>
#include <TMath.h>
#include <TObjArray.h>
-#include <TPad.h>
#include <TPaveLabel.h>
#include <TROOT.h>
+#include <TVirtualMC.h>
+#include "AliLog.h"
+#include "AliMC.h"
#include "AliMCQA.h"
#include "AliModule.h"
#include "AliRun.h"
//
// Build list of volume names
//
+ AliMC * mc = gAlice->GetMCApp();
for(i=0;i<fNvolumes;++i) {
- AliModule *mod = dynamic_cast<AliModule*>
- ((*gAlice->Modules())[gAlice->DetFromMate(gMC->VolId2Mate(i+1))]);
- (*fVolNames)[i]=new TNamed(gMC->VolName(i+1),mod->GetName());
+ Int_t mat = gMC->VolId2Mate(i+1);
+ if (mat > 0) {
+ AliModule *mod = dynamic_cast<AliModule*>
+ ((*gAlice->Modules())[mc->DetFromMate(gMC->VolId2Mate(i+1))]);
+ (*fVolNames)[i] = new TNamed(gMC->VolName(i+1),mod->GetName());
+ } else {
+ (*fVolNames)[i] = new TNamed(gMC->VolName(i+1), "Assembly");
+ }
}
fQAHist->Add(new TH1F("hMCMcalls","Monte Carlo calls per module",
fNdets, -0.5, fNdets-0.5));
h = dynamic_cast<TH1F*>(dir->FindObject("hMCMcalls"));
- h->GetListOfFunctions()->Add(new TExec("ex","gAlice->GetMCQA()->AddModuleName()"));
+ h->GetListOfFunctions()->Add(new TExec("ex","gAlice->GetMCQA()->AddModuleName()"));
dir->Remove(dir->FindObject("hMCMcalls"));
//
}
//_______________________________________________________________________
-void AliMCQA::Copy(AliMCQA &) const
+void AliMCQA::Copy(TObject &) const
{
- Fatal("Copy ctor","Not implemented!\n");
+ AliFatal("Not implemented!");
}
//_______________________________________________________________________