Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🤔 Whether ArrangementsID.Current marks the end of all arrangement events #26

Open
demberto opened this issue Sep 14, 2022 · 0 comments
Assignees
Labels
arrangement-general Project-wide and per-arrangement properties events Low-level API unknown Undiscovered, new or unused fields in structs

Comments

@demberto
Copy link
Owner

PyFLP/pyflp/arrangement.py

Lines 439 to 463 in ceff918

# TODO Verify ArrangementsID.Current is the end
# FL changed event ordering a lot, the latest being the most easiest to
# parse; it contains ArrangementID.New event followed by TimeMarker events
# followed by 500 TrackID events. TimeMarkers occured before new arrangement
# event in initial versions of FL20, making them harder to group.
def __iter__(self) -> Iterator[Arrangement]:
first = True
events: list[AnyEvent] = []
def make_arr():
return Arrangement(*events, version=self._kw["version"])
for event in self._events_tuple:
if event.id == ArrangementID.New:
if not first:
yield make_arr()
events = []
first = not first
elif event.id == ArrangementsID.Current:
return make_arr() # last arrangement
for enum_ in (ArrangementID, TimeMarkerID, TrackID):
if event.id in enum_:
events.append(event)
break

@demberto demberto added this to the PyFLP 2.0.0 milestone Sep 14, 2022
@demberto demberto added the question Further information is requested label Sep 17, 2022
@demberto demberto changed the title inspect: Whether ArrangementsID.Current marks the end of all arrangement events 🤔 Whether ArrangementsID.Current marks the end of all arrangement events Sep 17, 2022
@demberto demberto added the arrangement-general Project-wide and per-arrangement properties label Oct 8, 2022
@demberto demberto added events Low-level API unknown Undiscovered, new or unused fields in structs and removed question Further information is requested labels Oct 26, 2022
@demberto demberto self-assigned this Feb 5, 2023
@demberto demberto modified the milestones: PyFLP 2.0.0, 2.1.0 Mar 18, 2023
@demberto demberto removed this from the 2.1.1 milestone May 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arrangement-general Project-wide and per-arrangement properties events Low-level API unknown Undiscovered, new or unused fields in structs
Projects
None yet
Development

No branches or pull requests

1 participant