Hi Ali,
So, you want one block with:
* 8 inputs, itemsize0…7 = 1000*4B = 4000B
* 4 outputs, itemsize0=itemsize1=4000B, itemsize2=itemsize3=16B
Correct?
You need to generate two std::vector<int> with content
{4000,4000,4000,4000,4000,4000,4000,4000}
and
{4000,4000,16,16}
respectively, and use gr::io_signature::makev(int min_streams, int
max_streams, vector) to generate the io_signatures[1] that you use in
your block's constructor. The question whether your block should be a
general, or a sync block, is independent from the item sizes of the in
and outputs, but depends on whether there's always a fixed ratio of
produced output items to consumed input items, as explained in [2].
Best regards,
Marcus
[1]
https://gnuradio.org/doc/doxygen/classgr_1_1io__signature.html#a99e0f9e8de8e7ce16ed92d9f2655e66c
[2]
https://wiki.gnuradio.org/index.php/Guided_Tutorial_GNU_Radio_in_C%2B%2B#4.3.2_Specific_block_categories
On 07/17/2017 03:31 PM, Ali wrote:
Hi to all,
I want to design my own OOT module with the following I/O:
8 inputs (length of 1000 and each element is type of float)
2 outputs (length of 1000 and each element is type of float)
2 outputs (length of 4 and each element is type of float)
I used general type block but I could not get the desired outputs. Do
you suggest other type of blocks? Is there any example similar to this
work that I can study on? Can you suggest a module name or a link?
Best,
Ali
_______________________________________________
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