So basically i tried assigning the sync words only in the first call to
work() and the result was that only the first packet was transmitted
successfully, so either gnuradio scheduler is erasing all the output buffer
before the call to the work function, or the output buffer is a new
allocation and has nothing to do with the output buffer of the previous
call to work.

In any case, is there a way i can make that gnuradio just allocs that
buffer once and does not change the values of it, so i can be sure that in
successive calls to work the buffer retains the values written by previous
calls to work, if none of the consumer blocks changes their input buffer?

Thanks in advantage.

2016-03-13 14:44 GMT-03:00 Gonzalo Arcos <[email protected]>:

> Do output buffers of a block are always allocated in the same address
> throughout the same execution of the flowgraph? I need to know this because
> it would allow me to do some optimization.
>
>
> For example:
>
> Suppose i have the OFDM Carrier Allocator Block connected to the IFFT
> block.
>
> On every execution of work() the carrier allocator copies the synch words
> to the beggining of the output buffer. However, i know that my synch words
> will always remain the same throughout the entire execution of the
> flowgraph. Additionally, the fft should not change anything in its input
> buffer, which is ofdm carrier allocator's output buffer.
>
> So basically, i only need to copy that information once, on the first run,
> since then that data will remain in the buffer.
>
> This happens ONLY if the ofdm carrier allocator output buffer is not
> freed/alloc'ed by the gnuradio scheduler more than once per execution of
> the flowgraph.
>
> Can somebody confirm this?
>
> Thanks
>
_______________________________________________
Discuss-gnuradio mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to