Kieran Brownlees wrote:
Hello all,

I am not sure whether this is strange behaviour or I am misunderstanding
what you can do with hier_blocks.

Problem is best described with an example:

from gnuradio import gr
class h_block(gr.hier_block2):
    def __init__(self):
        gr.hier_block2.__init__(self,
            "h_block",
            gr.io_signature(1,1,gr.sizeof_float),
            gr.io_signature(0,0,0))

        hblock2 = h_block2()
        self.connect(self, hblock2)


i would change this last line to:
self.connect(self, gr.kludge_copy(gr.sizeof_float), hblock2)

hier blocks dont like to connect their virtualized inputs and outputs directly to other hier blocks. They require something substantial in-between. Thats is why we have kludge_copy, which just takes data from the h_block and passes it to the h_block2 input, just so long as the two h_blocks dont have to communicate directly!

Im not sure if there is a ticket about this, maybe http://gnuradio.org/trac/ticket/161 is related.

-Josh


_______________________________________________
Discuss-gnuradio mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to