On 19.05.2014 17:48, Kun Qian wrote:
Thank you for your quick answer!

I think I get how gnuradio works with history from your slides:
1. When flowgraph starts, the read pointer of input buffer is set
history()-1 items back.
2. After calling work()/general_work() function, gnuradio scheduler get the
number of consumed items of that input buffer and move the read pointer
forward by that number. Then scheduler wait until next time calling
work()/general_work() function.
Is it right?

And I think I find the error. In gr::block::general_work(), the parameter
ninput_items equals to the *sum* of *noutput_items of previous block* and
*history()-1*, isn't it? I thought ninput_items equals to noutput_items of
previous block when I built the block.

That's right. Everything in the input buffer is described by ninput_items, and that includes history.

M


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

Reply via email to