Here's some extra information--looking in the source code gnuradio/gnuradio-runtime/lib/tagged_stream_block.cc, this block of code is specifically what seems to cause the error message.
Specifically, I'm wondering what Line 117 does, because it looks suspiciously like it's setting d_n_input_items_reqd= -1 based on something input_items.size(), which would cause a runtime error in the next for-loop, which matches the error I get exactly. I tried to find out what ".assign" does but I don't know where to look for that, because I don't know what sort of thing d_n_input_items_reqd is, and I haven't been successful in finding "tagged_stream_block.h", in github.
^If anyone knows about this, please let me know!
There's nowhere else I suspect where the value of d_n_input_items_reqd changes from its initial value of input_signature->min_streams()
On Wed, Apr 20, 2016 at 4:58 PM, Jingyi Sun <sunjingyi5@gmail.com> wrote:
Hello everyone,I am trying to create an out-of-tree tagged stream block with multiple (3) input ports. Am I coding the private constructor incorrectly, or is there something else?Here's my process:First, I got the block to work with just one input port. Then, I added additional inputs by changing the number of min and max inputs, as follows,: gr::tagged_stream_block("geese_vcvc",
gr::io_signature::make(3, 3, sizeof(gr_complex) * fft_len),
gr::io_signature::make(1, 1, sizeof(gr_complex) * fft_len), tsb_key),add two more inputs in work, as follows,const gr_complex *a = (const gr_complex *) input_items[0];
const gr_complex *d = (const gr_complex *) input_items[1];
const gr_complex *x = (const gr_complex *) input_items[2];
gr_complex *out = (gr_complex *) output_items[0];and finally change the xml file to add two more sinks.Before these changes (highlighted in yellow), the block is able to run without runtime errors. However, after these changes, I get the following output:Showing: "/home/jenny//Tutorials/rx_ofdm.grc"
Generating: "/home/jenny/Tutorials/rx_ofdm.py"
Executing: "/home/jenny/Tutorials/rx_ofdm.py"
Using Volk machine: sse4_2_64_orc
gr::log :FATAL: geese_vcvc0 - Missing a required length tag on port 1 at item #0
thread[thread-per-block[46]: <block geese_vcvc (1)>]: Missing length tag.Thanks,Jenny

No comments:
Post a Comment