discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Discuss-gnuradio] Fwd: Re: Message inputs and hierachical block: incomp


From: Piotr Krysik
Subject: [Discuss-gnuradio] Fwd: Re: Message inputs and hierachical block: incompatibility introduced in GNU Radio 3.7.9
Date: Sun, 3 Jan 2016 19:41:00 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0


Hi Tim,

The new (originally intended) API is more intuitive. After thinking
again - I can live with having to add three lines to my hierarchical
blocks. It's better than complicating something more important (like
GRC) to get backward compatibility.

It's good to have confirmation that there were significant changes/fixes
in the hierarchical blocks code.

Regarding message passing in hierarchical blocks in GNU Radio 3.7.8 -
I've checked it and it works without problems. Messages carrying clock
offset measurements are reaching their destination
(clock_offset_corrector in gr-gsm). Maybe in my case the problems
doesn't occur.

--
Piotr Krysik

W dniu 02.01.2016 o 22:22, Tim O'Shea pisze:
> Hi Piotr,
>
> Hier message ports were actually not working at all prior to this fix - 
> - since the logic had been changed from the originally functioning
> pub/sub based message connection data structures into the more
> traditional digraph flattening structure incorrectly
> please see:  http://gnuradio.org/redmine/issues/862#change-2460
>
> This change was needed to correct the hier port flattening logic 
> and was the originally intended API that got reversed somewhere along
> the way - 
> GRC was updated to correspond -- 
> Have you tested your hier message ports actually function with 3.7.8
> successfully prior to this?  I would be kind of surprised - 
> Perhaps if you are writing python code, some kind of conditional check
> work around might be in order, or just dropping support for old
> versions as they did not function correctly
>
> -Tim
>
>
>
> On Sat, Jan 2, 2016 at 4:12 AM Piotr Krysik <address@hidden
> <mailto:address@hidden>> wrote:
>
>     Hi all,
>
>     In GNU Radio version 3.7.8 message inputs of hierarchical blocks were
>     created from python level with:
>        self.message_port_register_hier_out("msg_in")
>
>     Starting (most probably) from GNU Radio 3.7.9 message inputs are
>     created
>     with:
>        self.message_port_register_hier_in("msg_in")
>
>     This leads to incompatibility. I can't now distribute to the users
>     python code of hierarchical blocks generated with GRC because for some
>     of them it won't work (if they don't use the same GNU Radio
>     version as I
>     do). Compilation of GRC files to python with grcc during building
>     is not
>     an option as it doesn't work reliably yet and it will lead to higher
>     level of problems.
>
>     Currently I manually added this code to my hierarchical blocks in
>     order
>     to make them work on with GNU Radio earlier than 3.7.9:
>
>       from distutils.version import LooseVersion as version
>
>       if version(gr.version()) >= version('3.7.9'):
>         self.message_port_register_hier_in("msg_in")
>       else:
>         self.message_port_register_hier_out("msg_in")
>
>     Is it possible to fix this problem for example on the level GRC -
>     so it
>     generate code that is compatible with GNU Radio versions < 3.7.9 and
>     >=3.7.9?
>
>     Best Regards,
>     Piotr Krysik
>
>     _______________________________________________
>     Discuss-gnuradio mailing list
>     address@hidden <mailto:address@hidden>
>     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>






reply via email to

[Prev in Thread] Current Thread [Next in Thread]