Ok I’ve decided on somewhat of a revisit of my code.
Taking Eric’s advice I’m going to reimplement the code in a more
flowgraph based behavior. After a vector is brought into the system by
the MPI (my UDP interface system) some values will be stripped and the pay load
will be passed to a first code block that converts the values from an array of
U8’s to an array of unsigned shorts that represent the physical bit value
(each U8 will have 8 values representing their binary equivalents.). This
will then be parsed into 2 streams (broken at the midpoint of the array into 2 separate
streams) and passed out to the encoding block. This Aloumoti encoder will
then use a bit from row 0 and 1 from row 1 and convert them into a 2X2 matrix
and pass this out the other end (so I’m assuming a 1:2 or 2:4
interpolation is needed here). My question is how to utilize ‘gr_io_signature’
in the class derivation to create the 2 output streams, how to return on these
2 steams and then access them on the other end. I know the python should look something like #get values from UDP here MPI_SRC=gr.vector_source(src_data) #the stripped vector BIT_CONVERT=my.Bit_Vector() ALOUMOTI_ENCODER=my.Aloumoti() TX0PAYLOAD=gr.vector_sink() TX1PAYLOAD=gr.vector_sink() fg.connect(MPI_SRC, BIT_CONVERTER) fg.connect((BIT_CONVERTER,0), (ALOUMOTI_ENCODER,0)) fg.connect((BIT_CONVERTER,1), (ALOUMOTI_ENCODER,1)) fg.connect((ALOUMOTI_ENCODER,0), TX0PAYLOAD)#these are sink
currently so I can check the behavior of my flow graph system. fg.connect((ALOUMOTI_ENCODER,1), TX1PAYLOAD) at least this is the impression I get from the
documentation. However the aloumoti needs these 2 streams in combination to
create the output streams, how (in c) do I specify that there are 2 inputs and then
proceed to access those inputs in the C system? I’m already aware
it will in some way involve the min_in, min_out, etc. variables and their use
in generating an IO signature. Is it involved in the declaration of the in and out
variables at the beginning of the ‘work’ function: Specifically do I use something akin to: const float *in0= (const float *) input_items[0]; const float *in1= (const float *) input_items[1]; Any help would be greatly appreciated. -Garrett McGrath |
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio