On 03/11/2014 02:20 PM, Sumedha Goyal wrote:
Hello
The flowgraph of my top_block has test_demo as one of the blocks. The
work() function associated with it has only one print statement.
When I execute the flowgraph, the statement keeps on printing the
statement I AM IN WORK on the screen. Why does it happen?
My flowgraph is :
File source---stream to datagram---test_demodatagram to
stream-file sink
test_demo.py is :
Sumedha,
when posting Python code, make sure the indents get preserved (ideally,
don't send HTML emails).
M
import timing
import numpy
import gras
import Queue
import thread
from gnuradio import gr
from gnuradio import digital
from gnuradio import uhd
import grextras
class test_demo(gras.Block):
def __init__(self, threshold):
gras.Block.__init__(self,name=test_demo,
in_sig = [numpy.uint8,numpy.uint8,numpy.uint8],
out_sig = [numpy.uint8,numpy.uint8])
self.input_config(0).reserve_items = 0
self.input_config(1).reserve_items = 0
self.output_config(1).reserve_items = 4096
self.output_config(0).reserve_items = 4096
self.threshold=threshold
print inside test_demo
def work(self,ins,outs):
print I AM IN WORK
If it is due to the size of buffer/queue of the block then how can I
limit it?
I understand that work() keeps on executing till the block receives
something at its input ports. I want work() to return the control to
main flowgraph upon satisfying a user specified condition such as
if (i=5):
self.mark_done()
It should ignore all the pending packets of the buffer/queue.
I want to start my flowgraph fresh after this process.
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio