A bit more invasive than planned, but such are things...
- As laid out on ATR-24327, I give the TDT the ability to fetch the four JSONs itself when
m_useDirectMenuAccess=True.
From here it's similar to e.g. the xAODConfigSvc, we use the JSON to populate a bunch of legacy config objects (here owned by the per-slot CacheGlobalMemory object), and from these do the TDT's internal configuration in the way it expects.
-
We don't schedule the
xAODConfigSvcin RAWtoALL (specifically we refuse to return this whenInputContainsConfigMetadata == False) -
The
Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigGetter.pyis further tided up following the work of @fwinkl, we get it even more streamlined here. -
Event/xAOD/xAODTriggerCnv/src/TrigDecisionCnvTool.cxxthen has a problem as it was also using thexAODConfigSvcin RAWtoALL of R1, R2 data
We remove the xAODConfigSvc, it needs access to the list of chains - but it can also get this through the TDT's expert methods.
The TDT's expert methods are expanded to add a function for this (up to now it would only look up specific chains)
The Event/xAOD/xAODTriggerCnv/src/TrigDecisionCnvTool.cxx now needs to be explicitly linked against Trigger/TrigAnalysis/TrigDecisionTool/Root/TrigDecisionTool.cxx - we can no longer use the ITrigDecisionCnvTool interface as this is too basic (it has isPassed and that's about all)