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

[5SP,5SP] UI: Refactor flow-graph block handling #133

Closed
ivan-cukic opened this issue Dec 21, 2023 · 5 comments · Fixed by #149
Closed

[5SP,5SP] UI: Refactor flow-graph block handling #133

ivan-cukic opened this issue Dec 21, 2023 · 5 comments · Fixed by #149
Assignees

Comments

@ivan-cukic
Copy link
Contributor

ivan-cukic commented Dec 21, 2023

The Blocks in the UI should be refactored:

  • YAML loading and saving should be based on the GPs built-in loader
  • Blocks should be thin wrappers that only deal with the UI aspects,
    and that refer to GR blocks only by the unique identifier
  • A UI black should handle different instantiations of the same
    GR Block (if it represents FFT, it should allow changing
    to FFT without)
  • There should be no UI-defined blocks - everything should be
    ported to GR blocks
  • All updates should go through messages

Needs considering:

  • how are messages propagated when the scheduler is stopped?

pre-requisite to be completed: fair-acc/gnuradio4#210

@frankosterfeld
Copy link
Contributor

Reopening, as most of this isn't done yet (and requires the messaging framework)

@frankosterfeld
Copy link
Contributor

GRC loading in the UI is blocked on fair-acc/gnuradio4#287

@frankosterfeld
Copy link
Contributor

Another issue with using graph-prototype's GRC serialization: When parsing a remote flow graph for the GR flowgraph service, the UI will encounter blocks it doesn't know and cannot instantiate, like the PicoScope blocks. The GP GRC load_grc would currently fail in that situation. We might have to decouple the YAML parsing from the block instantiation here.

@frankosterfeld
Copy link
Contributor

frankosterfeld commented Apr 23, 2024

Parts of this are handled in /pull/177

  • local flow graph now parsed with gr::load_grc
  • UI block being a thin wrapper and avoiding direct accesses of GR blocks except for drawable blocks (ImPlotSink, toolbars)
  • All block implementations are without opendigitizer UI dependencies now and can be moved elsewhere if wanted

Not yet handled: Topology changes via messages.

See also #132

@frankosterfeld frankosterfeld changed the title [5SP] UI: Refactor flow-graph block handling [5SP,5SP] UI: Refactor flow-graph block handling May 2, 2024
@RalphSteinhagen
Copy link
Member

Thanks for finishing this. The remaining parts could perhaps be done as part of fair-acc/gnuradio4#181, or we open a new issue once/if the need arises. Will close this for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: QA-Accepted/Merged (∞)
Development

Successfully merging a pull request may close this issue.

3 participants