|
From: | Marcus Müller |
Subject: | Re: [Discuss-gnuradio] [GSoC] GNU Radio Companion Extensions: Output C++ Code |
Date: | Sun, 26 Mar 2017 16:48:10 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 |
Dear Håkon, cool! The C++ output option for GRC has been on many wishlists for a long long time. I do like the brevity of your proposal, however I miss a bit of you describing how exactly you want to do things, and what to focus on in which order. We're well aware of this specific idea being displayed very generally in the ideas list; that has the purpose of letting you pick and discuss your focus very freely. If I understand your timeline properly, your order of things is
Having the UI interface as first item seems like a positive approach to get to know the Python code of GRC a little better. I do think it kind of could wait until you'd actually be able to generate C++ code – that'd give you the chance to get a lot of feedback early and change directions of how you do things; GRC in it's current situation is relatively well split between the GUI and the (Python) code generation. I assume you've had a rough look at how Python generation in GRC works right now (block_name.xml files describe the GRC blocks, including the code that has to be called to instantiate an instance of the GNU Radio block class, and how these blocks are set up and connected is described in flow_graph.grc files; the actual python code is a template filled with the info from these). Now, in a first approach, this would "only" (as if) be a matter of adding new templates for the generated code, and new tags to the .xml files that describe which C++ code to call – but it would still be great to see you reflect a bit on whether you deem the same (Python-generation) templating infrastructure suitable for this use case (really, doesn't have to be in-depth – this is just a proposal) or whether you'd think there's things to change. Same goes for the "Makefile" generation. We really won't nail you down on what you propose now, but you giving a vision (maybe in a quick block diagram) of how the Makefile (or build system, in general – we use CMake in GNU Radio, and if you'd have another idea how to generate an executable from the C++ you generate, don't be shy, we can and will gently criticize if we found that necessary ;) ) will come together, and give maybe a list of infos on what info comes from where and ends up in the C++ header and the main source file and the Makefile, it'd give me a fuzzy warm feeling about you having a plan how to approach things. So: I like your project proposal, but I like it so much that I'd
want to see more of a proposed idea here. I think both Felix and
Sebastian don't want to mentor you as a "code monkey" – the whole
project would very much value you as active critic and architect
of "how things are done" in GRC and GNU Radio in general, so it's
kind of important to us that you emphasize how your plan is more
than what the Idea from the GSoC Ideas List already defines. Best regards, Marcus On 03/26/2017 02:20 PM, Håkon Vågsether
wrote:
|
[Prev in Thread] | Current Thread | [Next in Thread] |