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

Feature: enable subclassing Pothos::Topology to hook into other dataflow toolkits #210

Open
ncorgan opened this issue Aug 15, 2020 · 0 comments

Comments

@ncorgan
Copy link
Member

ncorgan commented Aug 15, 2020

Inspired by: https://github.com/gnuradio/gnuradio/blob/master/gr-uhd/examples/grc/rfnoc_radio_ddc.grc

Currently, the only real hooking into another dataflow infrastructure is in gr-pothos, which hacks in the block_executor to put a GNU Radio block inside a Pothos block. This approach is likely incompatible with other dataflow infrastructures. The idea here would be to put another dataflow toolkit's topology equivalent inside a Pothos::Topology and each of its blocks inside a Pothos::Block subclass. Connections between blocks would be done by overriding the _connect and _disconnect calls inside Pothos::Topology.

Connections between Pothos blocks don't do anything with buffers, and the Pothos blocks have getters and setters to hook into the underlying block's getters and setters and expose them as Pothos block functions (I don't know the implications with the scheduler here). There would be specific input and output blocks to pass Pothos buffers to and from this other toolkit.

I'm trying out this idea locally with an improved version of the GNU Radio RFNoC stuff linked above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant