Skip to content

Allow for PersistReco-specific CaloCluster and CaloHypo cloners

Alex Pearce requested to merge apearce-persistreco-calo-cloners into 2018-patches

We need PersistReco-specific Calo cloners because of the way the Calo cloners work. By default, associated digits are cloned depending on the charge of the Particle object passed down from a parent ParticleCloner tool, but when we clone whole containers of CaloHypo and CaloCluster objects, there is no parent Particle, and so we must instead force the cloning of associated digits.

This MR also implments running cloners in a specific order, cloning all containers of a given type in one go, so that explicit cloners override the behaviour of implicit cloners (cloners used by other cloners higher up in the object dependency tree).

/cc @rmatev

Merge request reports