diff --git a/Simulation/DetSimAna/src/Edm4hepWriterAnaElemTool.cpp b/Simulation/DetSimAna/src/Edm4hepWriterAnaElemTool.cpp index ca3bf7b63705b2b7ecf841a30d9e2b089c31cfff..937f9e1f7168204c8483a3d01d9596eec381666e 100644 --- a/Simulation/DetSimAna/src/Edm4hepWriterAnaElemTool.cpp +++ b/Simulation/DetSimAna/src/Edm4hepWriterAnaElemTool.cpp @@ -472,6 +472,15 @@ Edm4hepWriterAnaElemTool::PostUserTrackingAction(const G4Track* track) { mcp.addToParents(primary_particle); primary_particle.addToDaughters(mcp); + + // store the edm4hep obj idx in track info. + // using this idx, the MCParticle object could be modified later. + auto trackinfo = new CommonUserTrackInfo(); + trackinfo->setIdxEdm4hep(mcp.getObjectID().index); + sectrk->SetUserInformation(trackinfo); + info() << " Appending MCParticle: (id: " + << mcp.getObjectID().index << ")" + << endmsg; } } } diff --git a/Simulation/DetSimAna/src/Edm4hepWriterAnaElemTool.h b/Simulation/DetSimAna/src/Edm4hepWriterAnaElemTool.h index b290c40bd8f10545ce16d1c8588eb12f5aa54998..aad11e8d1f0963324abfd9c9039467673fdb67e9 100644 --- a/Simulation/DetSimAna/src/Edm4hepWriterAnaElemTool.h +++ b/Simulation/DetSimAna/src/Edm4hepWriterAnaElemTool.h @@ -7,6 +7,7 @@ #include "k4FWCore/DataHandle.h" #include "DetSimInterface/IAnaElemTool.h" #include "DetSimInterface/CommonUserEventInfo.hh" +#include "DetSimInterface/CommonUserTrackInfo.hh" #include "edm4hep/MCParticleCollection.h" #include "edm4hep/SimTrackerHitCollection.h"