hepmc3 nightly fixes 29122020 part 1
In this PR:
- Add a member function in HepMcParticleLink that returns a smart pointer for the HepMC3 This function should be used in case the interfaces require a smart pointer as an argument.
- Update the cases where a smart pointer should be used in the interfaces.
@jchapman , would you have some time to have a look? Also, from what I saw in the codes, it looks that the HepMcParticleLink is overused, e.g. in the Tracking classes. As for me, it would make much more sense to load the whole event once for these cases, and not to use HepMcParticleLink. Maybe one could optimize that at some point.
Edited by Andrii Verbytskyi