xAODPrimitives Python Helper, master branch (2020.05.27.)
This is meant to fix the issue(s) described in ATR-21477.
As @fwinkl reported, unfortunately the xAODCoreRflxDict
-> xAODCoreDict
name change introduced with !33176 (merged) caused a number of failures in the last nightly.
Instead of just changing the names of the dictionary libraries loaded in our Python configuration explicitly, I decided to do something better. I introduced some python code into xAODPrimitives that could be used to provide access to the enumerations defined in the xAOD::Iso
namespace. Instead of clients loading libraries explicitly left and right. (As it turns out, xAODCoreRflxDict
was always loaded to get access to those enumerations. Which by itself is a weird thing...)
While making changes in the clients so that they would use the new xAODPrimitives.xAODIso
module, I also made some other changes.
- Reconstruction/egamma/egammaTools/python/EMShowerBuilder.py didn't apparently need any of these enumerations by now, the code could just be removed;
-
PhysicsAnalysis/SUSYPhys/LongLivedParticleDPDMaker/python/HNLFlags.py:
- Made sure that the module could be loaded by itself. (Previously it couldn't be, as I found in my testing.)
- Removed the
_v1
postfixes from thexAOD::Muon
type names, as with the recently introduced typedefsROOT.xAOD.Muon
is now a known type.
These cover every single place where xAODCoreRflxDict
was mentioned in our code. So to speed things up, I'd rather want to avoid running the MR with full-unit-tests. But if you think Frank that we should do full unit tests, then we'll do that...