feat: propagate usages of DeviceTimelineState to the conductor
#411
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This continues from #400
About the Contributor
This pull request is posted on behalf of Superfly
Type of Contribution
This is a: Code improvement
Current Behavior
The conductor constructs a filtered
Timeline.TimelineState<TSRTimelineContent>for each active device. These get propagated through ThreadedClass where they then get condensed down to the newDeviceTimelineState<TSRTimelineContent>form.New Behavior
Instead, this now does the conversion to
DeviceTimelineState<TSRTimelineContent>in the conductor, passing around this smaller form over IPC to the worker_threads.This should reduce the cost of passing this data, and simplifies the apis/types a bit to reduce the exposure of superfly-timeline within the code.
Testing Instructions
Other Information
Status