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

Message-based API for block and edge creation and deletion #357

Merged
merged 2 commits into from
Jun 11, 2024

Conversation

ivan-cukic
Copy link
Contributor

No description provided.

Copy link
Member

@RalphSteinhagen RalphSteinhagen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ivan-cukic this looks very good. I especially like the new qa_GraphMessage unit tests. Very concise and easy to follow! Well done! 👍

I guess some parts are still a bit final-clean-up-WIP but the things I found are only minor (i.e. leftover debugging prints etc.) that should not prevent the merge as soon as the CI passes.

Feel free to squash-merge once you have done the final clean-up/checks!

Again, Good work!

N.B. also the new clang-format pays off ... more functionality for less code to read!

core/include/gnuradio-4.0/Message.hpp Outdated Show resolved Hide resolved
core/include/gnuradio-4.0/Port.hpp Outdated Show resolved Hide resolved
core/include/gnuradio-4.0/Port.hpp Outdated Show resolved Hide resolved
static_assert(kIsOutput && std::remove_cvref_t<Other>::kIsInput);
static_assert(std::is_same_v<value_type, typename std::remove_cvref_t<Other>::value_type>);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@ivan-cukic ivan-cukic force-pushed the ivan/message-updates branch 2 times, most recently from 66c4c90 to dd8ae77 Compare June 10, 2024 04:48
@ivan-cukic ivan-cukic changed the title CI test Message-based API for block and edge creation and deletion Jun 10, 2024
Copy link
Member

@RalphSteinhagen RalphSteinhagen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ivan-cukic thanks for the changes. Will merge this once the CI passes!

This is a good milestone.

As on open-ended question: since we can now change both block settings and the graph topology changes ... maybe we could drop the direct block slide access to settings which in turn would allow to remove the mutexes that are presently protecting the setting interface from direct access.

- Runtime Graph::emplaceBlock that accepts stringified block info
- Added messages for emplacing, removing and replacing blocks
  (as well as their reply messages)
- Added messages for connecting and disconnecting ports
- Introduced ENABLE_BLOCK_REGISTRY and ENABLE_BLOCK_PLUGINS cmake options
- Introduced GNURADIO4_PLUGIN_DIRECTORIES environment variable
  to override the paths where the global plugin loader searches for plugins

Signed-off-by: Ivan Čukić <[email protected]>
Copy link

sonarcloud bot commented Jun 10, 2024

Quality Gate Failed Quality Gate failed

Failed conditions
42.1% Coverage on New Code (required ≥ 80%)

See analysis details on SonarCloud

@RalphSteinhagen RalphSteinhagen merged commit c23f080 into main Jun 11, 2024
8 of 10 checks passed
@RalphSteinhagen RalphSteinhagen deleted the ivan/message-updates branch June 11, 2024 05:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants