Skip to content

Refactor offline

Tamas Gal requested to merge refactor-offline into master

This refactoring includes some slicing and performance improvement attempts.

The slicing is still experimental and has some flaws:

  • fancy indexing over thousands of elements might be horrible slow, eg f.events.tracks[idx_list, 0] where idx_list is a huge list of indices
  • trivial problem of iterating: for track in f.evens.tracks does not stop after the last element
  • meaningless indexing: f.events[5][23][420] is simply f.events[420] since the index/slice is not chained but overwritten when propagated. We need custom checks whether it makes sense
    • events are flat lists, so [x][y] does not make sense, it should throw an error
    • f.events[5:23][4] should effectively be the same as f.events[9] due to chaining of slice/index
Edited by Tamas Gal

Merge request reports