#include <TVector3.h>
#include "AliGenMC.h"
+#include "AliGenEventHeader.h"
#include "AliRun.h"
#include "AliGeometry.h"
+#include "AliDecayer.h"
ClassImp(AliGenMC)
case kDiElectron:
case kBJpsiDiElectron:
case kBPsiPrimeDiElectron:
+ case kElectronEM:
+ case kDiElectronEM:
fChildSelect[0] = kElectron;
break;
case kHardMuons:
case kBSemiMuonic:
+ case kDSemiMuonic:
case kSemiMuonic:
case kDiMuon:
+ case kJpsiDiMuon:
case kBJpsiDiMuon:
case kBPsiPrimeDiMuon:
case kPiToMu:
fChildSelect[0]=kKPlus;
break;
case kBJpsi:
+ case kBJpsiUndecayed:
fChildSelect[0]= 443;
break;
case kChiToJpsiGammaToMuonMuon:
fChildSelect[0]= kProton;
fChildSelect[1]= 211;
break;
+ case kPsiPrimeJpsiDiElectron:
+ fChildSelect[0]= 211;
+ fChildSelect[1]= 11;
+ break;
+ case kGammaEM:
+ fChildSelect[0] = kGamma;
+ break;
case kOmega:
case kAll:
case kAllMuonic:
case kNoDecayHeavy:
case kNoDecayBeauty:
case kNeutralPion:
+ case kBeautyUpgrade:
break;
}
return kFALSE;
}
-Bool_t AliGenMC::KinematicSelection(TParticle *particle, Int_t flag) const
+Bool_t AliGenMC::KinematicSelection(const TParticle *particle, Int_t flag) const
{
// Perform kinematic selection
Double_t pz = particle->Pz();
// Applies a boost in the y-direction in order to take into account the
// beam crossing angle
- Double_t thetaPr0, phiPr0, pyPr2, pzPr2;
+ Double_t thetaPr0, pyPr2, pzPr2;
TVector3 beta;
thetaPr0 = fXingAngleY / 2.;
- phiPr0 = 0;
// Momentum of the CMS system
pyPr2 = TMath::Sqrt(fEnergyCMS * fEnergyCMS/ 4 - 0.938 * 0.938) * TMath::Sin(thetaPr0);
{
// Passes header either to the container or to gAlice
if (fContainer) {
+ header->SetName(fName);
fContainer->AddHeader(header);
} else {
gAlice->SetGenEventHeader(header);