Modernize MCDecayTreeTuple, TupleToolTrigger and TupleToolEventInfo
For the HltEfficiencyChecker tool (prints out/plots some efficiencies for the new HLT, see https://gitlab.cern.ch/lhcb/mooreanalysis/merge_requests/1) I use some tuple tools to write trigger decisions and basic kinematic information to a tuple. To make these work with the new scheduler so they can be added to the control flow following Moore, some modernisation/addition is needed:
-
TupleToolTriggerandTupleToolEventInfonow use data handles to declare their data dependencies. Drop L0 code.They also look for trigger dec reports with strings ending inLinerather thanDecision, as they are written these days. -
MCTupleToolKinematicalso adds theetavariable to tuples - this is useful so you can ask for an efficiency if all the children of a decay fall within theetaacceptance of LHCb. -
MCDecayTreeTupledeclares its tools in theinitialisemethod, so their data dependencies are made explicit. Beforehand tools were only instantiated when they are first asked for. This code is pretty much copied from theinitializeStufferToolsmethod ofPhys/DecayTreeTupleBase/DecayTreeTupleBase/DecayTreeTupleBaseTemplates.icppand could possibly be improved.
TODO:
-
The fact that the dec reports have the Linesuffix rather than theDecisionas in Run 2 probably shouldn't happen, and so perhaps this should instead be fixed inMoore, rather than changing what the tuple tool looks for here. -
Fix formatting? -
Update the treatment of HLT2 as well as HLT1 in TupleToolTrigger, and remove L0? POSTPONE HLT2 TO EXTENSION OF TOOL TO HLT2 -
Improve the initialisation of the tools in MCDecayTreeTuple?
A dependency of https://gitlab.cern.ch/lhcb/mooreanalysis/merge_requests/1. Depends on LHCb!2319 (merged), LHCb!2373 (merged), Phys!662 (merged)
Edited by Rosen Matev