diff --git a/PhysicsTools/Heppy/python/analyzers/objects/autophobj.py b/PhysicsTools/Heppy/python/analyzers/objects/autophobj.py index e25d5964dac97..05d1cda9b1ec8 100644 --- a/PhysicsTools/Heppy/python/analyzers/objects/autophobj.py +++ b/PhysicsTools/Heppy/python/analyzers/objects/autophobj.py @@ -25,6 +25,12 @@ NTupleVariable("p4", lambda x : x, "TLorentzVector", default=ROOT.reco.Particle.LorentzVector(0.,0.,0.,0.), filler = lambda vector, obj: vector.SetPtEtaPhiM(obj.pt(), obj.eta(), obj.phi(), obj.mass())), # ^^^^------- Note: p4 normally is not saved unless 'saveTLorentzVectors' is enabled in the tree producer ]) +lightFourVectorType = NTupleObjectType("lightFourVector", variables = [ + NTupleVariable("pt", lambda x : x.pt(), storageType="H"), + NTupleVariable("eta", lambda x : x.eta(), storageType="H"), + NTupleVariable("phi", lambda x : x.phi(), storageType="H"), + NTupleVariable("mass", lambda x : x.mass(), storageType="H"), +]) tlorentzFourVectorType = NTupleObjectType("tlorentzFourVectorType", variables = [ NTupleVariable("pt", lambda x : x.Pt()), NTupleVariable("eta", lambda x : x.Eta()), @@ -239,7 +245,8 @@ ## GENPARTICLE ##------------------------------------------ -genParticleType = NTupleObjectType("genParticle", baseObjectTypes = [ particleType ], mcOnly=True, variables = [ +genParticleType = NTupleObjectType("genParticle", baseObjectTypes = [ lightFourVectorType ], mcOnly=True, variables = [ + NTupleVariable("pdgId", lambda x : x.pdgId(), int), NTupleVariable("charge", lambda x : x.threeCharge()/3.0, float), NTupleVariable("status", lambda x : x.status(),int), NTupleVariable("isPromptHard", lambda x : getattr(x,"promptHardFlag",0), int)