fE(0),
fVx(0),
fVy(0),
- fVz(0)
+ fVz(0),
+ fVt(0)
{
// Default Constructor
fDaughter[0] = fDaughter[1] = 0;
}
-AliAODMCParticle::AliAODMCParticle(AliMCParticle* mcpart, Int_t label,Int_t flag):
- AliVParticle(),
+AliAODMCParticle::AliAODMCParticle(const AliMCParticle* mcpart, Int_t label,Int_t flag):
+ AliVParticle(*mcpart),
fPdgCode(mcpart->Particle()->GetPdgCode()),
fFlag(flag),
fLabel(label),
fE(mcpart->Particle()->Energy()),
fVx(mcpart->Particle()->Vx()),
fVy(mcpart->Particle()->Vy()),
- fVz(mcpart->Particle()->Vz())
+ fVz(mcpart->Particle()->Vz()),
+ fVt(mcpart->Particle()->T())
{
+ // Constructor
fDaughter[0] = mcpart->GetFirstDaughter();
fDaughter[1] = mcpart->GetLastDaughter();
- // Set unique id
- TObject::SetUniqueID(mcpart->Particle()->GetUniqueID());
}
fE(mcPart.fE),
fVx(mcPart.fVx),
fVy(mcPart.fVy),
- fVz(mcPart.fVz)
+ fVz(mcPart.fVz),
+ fVt(mcPart.fVt)
{
// Copy constructor
fDaughter[0] = mcPart.fDaughter[0];
fDaughter[1] = mcPart.fDaughter[1];
-
}
AliAODMCParticle& AliAODMCParticle::operator=(const AliAODMCParticle& mcPart)
fVx = mcPart.fVx;
fVy = mcPart.fVy;
fVz = mcPart.fVz;
+ fVt = mcPart.fVt;
fDaughter[0] = mcPart.fDaughter[0];
fDaughter[1] = mcPart.fDaughter[1];
}
}
void AliAODMCParticle::Print(const Option_t */*opt*/) const {
+// Print particle information
if(TDatabasePDG::Instance()->GetParticle(fPdgCode)){
Printf(">>> PDG (%d) : %s",fPdgCode,TDatabasePDG::Instance()->GetParticle(fPdgCode)->GetName());
}
else{
Printf(">>> PDG (%d) : %s",fPdgCode,"Unknown");
}
- Printf(">> P(%3.3f,%3.3f,%3.3f) V((%3.3f,%3.3f,%3.3f)",fPx,fPy,fPz,fVx,fVy,fVz);
- Printf("> Mother %d, First Daughter %d Last Daughter %d Process %d",fMother,fDaughter[0],fDaughter[1],TObject::GetUniqueID());
+ Printf(">> P(%3.3f,%3.3f,%3.3f) V((%3.3f,%3.3f,%3.3f,%3.3f)",fPx,fPy,fPz,fVx,fVy,fVz,fVt);
+ Printf("> Mother %d, First Daughter %d Last Daughter %d , Status %d, PhysicalPrimary %d",
+ fMother,fDaughter[0],fDaughter[1],GetStatus(),
+ IsPhysicalPrimary());
}