Move v2::Particle types from Phys to LHCb, add new zip proxy types
Note this currently targets the branch of !2621 (merged); it should not be merged into there, we can change the target to master once !2621 (merged) is merged.
- Import @nnolte's
v2::Compositesand friends fromPhysintoLHCb. - Add
SOACollectionhelper for implementing dynamically-resizeable collections of columns ("a betterstruct-of-vectors") - Use this helper to implement
v2::Composites - Modify the proxies produced by
LHCb::Pr::Zipto support more different behaviours- In addition to the old "load" behaviour, where a SIMD proxy would yield contiguous elements, "broadcast" proxies (which yield a SIMD vector full of the same element) and "gather" proxies (which take a SIMD vector of indices) are now supported
- Add some extra helpers for implementing the proxy classes
cc: @nnolte
Phys!729 (merged) should be applied simultaneously.
Edited by Olli Lupton