azonenberg changed the topic of #scopehal to: libscopehal, libscopeprotocols, and glscopeclient development and testing | https://github.com/azonenberg/scopehal-apps | Logs: https://libera.irclog.whitequark.org/scopehal
<_whitenotifier-e> [scopehal] azonenberg pushed 1 commit to master [+0/-0/±166] https://github.com/azonenberg/scopehal/compare/ef5ba06fa4d0...a51351b6c33d
<_whitenotifier-e> [scopehal] azonenberg a51351b - Refactoring: Removed Filter::IsOverlay() method as well as all overrides in derived classes. Now redundant as there's other ways to get this info.
<_whitenotifier-e> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±1] https://github.com/azonenberg/scopehal-apps/compare/20ca987ccac9...d86aadab9378
<_whitenotifier-e> [scopehal-apps] azonenberg d86aada - Updated submodules
<azonenberg> ok that's the first step towards the refactoring we were talking about the other day
<azonenberg> now, when a filter is created i determine if it's an overlay or not based on whether it outputs a digital or complex type
<azonenberg> if so, it's an overlay
<azonenberg> if not, a new channel
<azonenberg> once created, i determine overlay or not based on whether it's in the list of overlay
<azonenberg> overlays*
<azonenberg> The next step is going to be a more extensive refactoring of waveform area handling of overlays and multiple channels
<azonenberg> i think this was the key core refactoring of it though
<azonenberg> the next step will be to make a WaveformArea a FlowGraphNode with a single input (preserving the one-analog-input-per-waveform-area restriction we have now)
<azonenberg> and then start looking into how to do multiple inputs in this model, and fitting overlays into the same model
<azonenberg> should make things a lot cleaner long term
Degi_ has joined #scopehal
Degi has quit [Ping timeout: 272 seconds]
Degi_ is now known as Degi
<azonenberg> Ok sooo hmm
<azonenberg> So this is getting a bit more complex
<azonenberg> because the object hierarchy is a bit tricky
<azonenberg> An OscilloscopeChannel has one or more output streams and all of the usual settings you'd expect from something that outputs a waveform
<azonenberg> A FlowGraphNode has zero or more input streams and zero or more parameters
<azonenberg> a Filter is a FlowGraphNode and an OscilloscopeChannel
<azonenberg> a Trigger is a FlowGraphNode but not an OscilloscopeChannel
<azonenberg> and now I want to make WaveformArea a FlowGraphNode too
<azonenberg> the challenge is, right now the filter graph editor assumes everything in the graph is an OscilloscopeChannel
<azonenberg> but this means we cannot display triggers in the graph editor
<azonenberg> nor can we add waveform areas
<azonenberg> If we change the editor to work on FlowGraphNode's, then it won't be able to work with actual scope channels
<azonenberg> So i'm contemplating making OscilloscopeChannel derive from FlowGraphNode
<azonenberg> Which seems to make the most sense
<azonenberg> it will simply be a node that has no inputs
<_whitenotifier-e> [scopehal] azonenberg edited issue #556: Add method for re-evaluating filters downstream of a given filter - https://github.com/azonenberg/scopehal/issues/556
<_whitenotifier-e> [scopehal] azonenberg commented on issue #556: Add method for re-evaluating filters downstream of a given filter - https://github.com/azonenberg/scopehal/issues/556#issuecomment-1053062560
<_whitenotifier-e> [scopehal] azonenberg pushed 1 commit to master [+2/-0/±5] https://github.com/azonenberg/scopehal/compare/a51351b6c33d...2616f234b2f7
<_whitenotifier-e> [scopehal] azonenberg 2616f23 - Refactoring: OscilloscopeChannel is now a FlowGraphNode
<azonenberg> Yeah i think that makes sense. Now I'm working on refactoring FilterGraphEditor / FilterGraphEditorWidget so that it can work with FlowGraphNode's that are not OscilloscopeChannel's
<azonenberg> Trigger's will be the first test case
<_whitenotifier-e> [scopehal] azonenberg pushed 2 commits to master [+0/-0/±2] https://github.com/azonenberg/scopehal/compare/2616f234b2f7...54010763b7a5
<_whitenotifier-e> [scopehal] azonenberg 7baa03c - StreamDescriptor: Added operator bool() to check if channel is null
<_whitenotifier-e> [scopehal] azonenberg 5401076 - Trigger: added GetScope() method so we can get the scope attached to a trigger
<_whitenotifier-e> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±3] https://github.com/azonenberg/scopehal-apps/compare/d86aadab9378...78c96712f21f
<_whitenotifier-e> [scopehal-apps] azonenberg 78c9671 - FilterGraphEditorWidget: refactoring to support FlowGraphNode's other than OscilloscopeChannel's. No such nodes are implemented, but the data structures now allow for it.
bvernoux has joined #scopehal
bvernoux has quit [Quit: Leaving]