gordonwatts / xaod_usage

Book describing how to use the xAOD ATLAS ServiceX Backend
MIT License
1 stars 2 forks source link

Convert to using ToolHandle everywhere #11

Open gordonwatts opened 2 years ago

gordonwatts commented 2 years ago

From Nils:

As for using a regular ToolHandle, create it with an auto-declaring inline constructor, e.g. change: asg::AnaToolHandle m_trigDec;
to: ToolHandle m_trigDec {this, "trigDec", "Trig::TrigDecisionTool/TrigDecisionTool"};

And then move the configuration to python, e.g. something like: addPrivateTool (alg, "trigDec", "Trig::TrigDecisionTool") addPrivateTool (alg, "trigDec.ConfigTool", "TrigConf::xAODConfigTool") alg.trigDec.TrigDecisionKey = "xTrigDecision"

and then you don't need anything in the constructor and in initialize() you just need: ANA_CHECK (m_trigDec.retrieve());

There also seems to be a Trigger CP sequence defined, but I never used it: https://gitlab.cern.ch/atlas/athena/-/blob/21.2/PhysicsAnalysis/Algorithms/TriggerAnalysisAlgorithms/python/TriggerAnalysisSequence.py

Please note that the trigger people are always very insistent that we can't just prepare some trigger sequence that will work for everyone, but that we will need a number of sequences for different cases and then there will still be a sizable number of users who need something custom just for their analysis. I don't know if that is an accurate assessment or if they are just really proud of how complicated the trigger is.

Cheers, Nils