Open baconpaul opened 1 week ago
Tackling this now. Just to be sure @baconpaul, the "make it stream" example I'm meant to follow is the SC_STREAMDEF macro in modulation_traits, no?
...and if so. How exactly should I deal with the enums? I see there's a STREAM_ENUM macro but it's not clear to me how that interacts with the stream def one.
Yes And for stream enum it’s thee parts By the enum in the header define a to string pair - there’s a macro for that just look at play mode or lfo curve shape or what not In the cpp implement it Then define it streamable in the json
this seems a lot but it stops us being sensitive to streaming breaks from enum reordering
Ah right ok! It's coming back slowly sorry. Haven't been outside of processors much... 😅 Will take another dig at it tomorrow.
Here's the panel
Here's how I would do it
Step one: include the data
enum Mode, enum NoteStyle, int16_t num, int16_t den
and then a std::array<PhasorConfig, numPhasors>Step two: make the screen
Step three: make it work in the engine. This will be a non-compatible break with prior patches and that's OK.
so go stare at that. I think the mistake I made is that everyone gets the same transport phasor set. So I propose something roughly akin to
modulation_shared/TransportPhasorBase