Draft: Add LoKi adaptor ThOr functor
Towards Rec#169 (closed). Currently requires Rec!2429 (closed) but probably shouldn't; the Python code there should be moved here or the LoKi dependency moved to Rec.
To be addressed, off the top of my head:
- Tests. (I ran a local test and got identical results with
F.LOKI("PT")
versusF.PT
, but should be formalised). - Compatibility with the
DV
class of LoKi functors. These expect the owning algorithm to be derived fromDVCommonBase
so that they can call functions to e.g. get PVs and PV relations, but we expect to dropDVCommonBase
support in the future. The algorithms we already have which operate onLHCb::Particle
using ThOr functors do not derive fromDVCommonBase
. - Adapters for combinations. The
A
series of LoKi functors, likeAM
, have a different signature. The adapter here is hard-coded for the signature ofLHCb::Particle
input (i.e. not combinations). - Support 'preambulos', i.e. lists of strings of Python code to be executed before the functor code is evaluated.
- TBD if we actually want this.
Edited by Alex Pearce