Forum: GNU Radio Segmentation fault : Try to make dual channel building blocks

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
051a38020a2f15e4604075dfc309b3aa?d=identicon&s=25 Yong J. Chang (Guest)
on 2009-03-06 20:04
(Received via mailing list)
Hi all,

Now I'm building some signaling blocks having dual output streams.
But if I try to make dual output streams which have different data type
from
input stream, 'Segmentation fault' error is occurred. How can I make
dual
outputs which have different data type from input stream?

Thanks in advance.
Yong

--
View this message in context:
http://www.nabble.com/Segmentation-fault-%3A-Try-t...
Sent from the GnuRadio mailing list archive at Nabble.com.
745d8202ef5a58c1058d0e5395a78f9c?d=identicon&s=25 Eric Blossom (Guest)
on 2009-03-06 20:13
(Received via mailing list)
On Fri, Mar 06, 2009 at 11:03:28AM -0800, Yong J. Chang wrote:
>
> Hi all,
>
> Now I'm building some signaling blocks having dual output streams.
> But if I try to make dual output streams which have different data type from
> input stream, 'Segmentation fault' error is occurred. How can I make dual
> outputs which have different data type from input stream?
>
> Thanks in advance.
> Yong

Have you read

  http://www.gnu.org/software/gnuradio/doc/howto-wri... ?

There are always separate is_signatures for input and output
directions.  Look at gr_io_signature.h for additional information.
gdb will tell you where you are segfaulting.

Eric
051a38020a2f15e4604075dfc309b3aa?d=identicon&s=25 Yong J. Chang (Guest)
on 2009-03-07 02:24
(Received via mailing list)
Thank you Eric,

But I still have a problem. I simply made two blocks.

1) First One
gr_data_parser::gr_data_parser ()
  : gr_block ("gr_data_parser",
       gr_make_io_signature (1, 1, sizeof (gr_complex)),
       gr_make_io_signature (1, 2, sizeof (gr_complex)))

2) Second One
gr_data_parser2::gr_data_parser2 ()
  : gr_block ("gr_data_parser2",
       gr_make_io_signature (1, 2, sizeof (gr_complex)),
       gr_make_io_signature (1, 1, sizeof (gr_complex)))

And I connect above two blocks in following way.

self.connect(self.u, ..... , data_parser, data_parser2 , .... self. u);

I put a debug code in the function 'general_work()' of first function, I
just can have

output_items.size() = 1

The number of output stream of first block could not be changed. Is
there
any other point I should change?

Thanks in advance
Yong
--
View this message in context:
http://www.nabble.com/Segmentation-fault-%3A-Try-t...
Sent from the GnuRadio mailing list archive at Nabble.com.
745d8202ef5a58c1058d0e5395a78f9c?d=identicon&s=25 Eric Blossom (Guest)
on 2009-03-07 04:33
(Received via mailing list)
On Fri, Mar 06, 2009 at 05:22:44PM -0800, Yong J. Chang wrote:
>
> I put a debug code in the function 'general_work()' of first function, I
> just can have
>
> output_items.size() = 1

That means that the block has a single output, not that the size of
the output item is 1 byte.

Eric
This topic is locked and can not be replied to.