Sebastian,

it turns out that the colour mismatch was not the issue here (your pointed
questions
made me realize that).

There must be a problem with hier blocks with 4 or more ports (one of which
is an async message)!!!

I attach here a trivial example.

I will also repost this question under a separate title on the mailing
list...

Achilleas


On Thu, Jan 30, 2014 at 6:35 AM, Koslowski, Sebastian (CEL) <
sebastian.koslow...@kit.edu> wrote:

>
> On 01/29/2014 06:20 PM, Achilleas Anastasopoulos wrote:
> > 1) the colour of the pad connection is not exactly the same as the
> > message connection (maybe this implies something...)
>
> Like the color difference between "Message Queue" and "Async Message"
> ports (see Help-->Types)?
>
> > When I compile the block, the python code does not have any
> > signature that refers to the message output.
>
> Can you provide an example (your files, a screen-shot, a generic
> example,...)?
>
> Sebastian
>
> --
> Karlsruhe Institute of Technology (KIT)
> Communications Engineering Lab (CEL)
>
> Dipl.-Ing. Sebastian Koslowski
> Research Associate
>
> Kaiserstraße 12
> Building 05.01
> 76131 Karlsruhe, Germany
>
> Phone: +49 721 608-46275
> Fax:   +49 721 608-46071
> Email: sebastian.koslow...@kit.edu
> Web:   http://www.cel.kit.edu/
>
> KIT - University of the State of Baden-Wuerttemberg and National
> Research Center of the Helmholtz Association
>
>

Attachment: test_msg_hier.grc
Description: Binary data

#!/usr/bin/env python
##################################################
# Gnuradio Python Flow Graph
# Title: test_msg
# Author: Achilleas
# Generated: Thu Jan 30 16:01:40 2014
##################################################

execfile("/home/anastas/.grc_gnuradio/test_msg_hier.py")
from gnuradio import analog
from gnuradio import blocks
from gnuradio import eng_notation
from gnuradio import gr
from gnuradio.eng_option import eng_option
from gnuradio.filter import firdes
from optparse import OptionParser

class test_msg(gr.top_block):

    def __init__(self):
        gr.top_block.__init__(self, "test_msg")

        ##################################################
        # Variables
        ##################################################
        self.samp_rate = samp_rate = 32000

        ##################################################
        # Blocks
        ##################################################
        self.test_msg_hier_0 = test_msg_hier()
        self.blocks_throttle_0 = blocks.throttle(gr.sizeof_gr_complex*1, samp_rate)
        self.blocks_null_sink_0_3_1_0 = blocks.null_sink(gr.sizeof_float*1)
        self.blocks_null_sink_0_3_1 = blocks.null_sink(gr.sizeof_gr_complex*1)
        self.blocks_null_sink_0_3 = blocks.null_sink(gr.sizeof_gr_complex*1)
        self.blocks_null_sink_0 = blocks.null_sink(gr.sizeof_gr_complex*1)
        self.blocks_message_debug_0 = blocks.message_debug()
        self.analog_const_source_x_0 = analog.sig_source_c(0, analog.GR_CONST_WAVE, 0, 0, 0)

        ##################################################
        # Connections
        ##################################################
        self.connect((self.analog_const_source_x_0, 0), (self.blocks_throttle_0, 0))
        self.connect((self.blocks_throttle_0, 0), (self.test_msg_hier_0, 0))
        self.connect((self.test_msg_hier_0, 0), (self.blocks_null_sink_0, 0))
        self.connect((self.test_msg_hier_0, 1), (self.blocks_null_sink_0_3, 0))
        self.connect((self.test_msg_hier_0, 2), (self.blocks_null_sink_0_3_1, 0))
        self.connect((self.test_msg_hier_0, 3), (self.blocks_null_sink_0_3_1_0, 0))

        ##################################################
        # Asynch Message Connections
        ##################################################
        self.msg_connect(self.test_msg_hier_0, "out_msg", self.blocks_message_debug_0, "print")

# QT sink close method reimplementation

    def get_samp_rate(self):
        return self.samp_rate

    def set_samp_rate(self, samp_rate):
        self.samp_rate = samp_rate
        self.blocks_throttle_0.set_sample_rate(self.samp_rate)

if __name__ == '__main__':
    parser = OptionParser(option_class=eng_option, usage="%prog: [options]")
    (options, args) = parser.parse_args()
    tb = test_msg()
    tb.start()
    raw_input('Press Enter to quit: ')
    tb.stop()
    tb.wait()

_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to