Hi Jeff, Thank you very much!
George On Thu, Apr 21, 2022 at 12:21 PM Jeff Long <willco...@gmail.com> wrote: > Right. Of course you can just use one loop of noutput_items * vlen > iterations. > > Technically noutput_items says how many items you may write, not how many > the scheduler is delivering (implying input). In a sync block, they are the > same though, unless you overwritten forecast(). > > On Thu, Apr 21, 2022 at 12:14 PM George Edwards <gedwards....@gmail.com> > wrote: > >> Hi Jeff, >> >> Thanks for your reply! >> >> So let me make certain that I understand correctly your response where >> you said there were 16*512 samples (8192 samples). So I take it that >> noutput_items >> (which has alternating values of 15 and 16 when printed to the screen) tells >> me the number of vectors of vlen elements the scheduler delivers on each >> iteration. Therefore, to process all the data delivered in one iteration >> (noutput_items >> * vlen floating point samples), if I was simply designing an algorithm >> that writes the input data to the output, I would do the following: >> >> for (int j = 0; j < noutput_items; j++){ >> for (int i = 0; i < vlen; i++){ >> out[ vlen*j + i ] = in[ vlen*j + i ]; >> } >> } >> >> Am I right? >> Thank you! >> George >> >> On Wed, Apr 20, 2022 at 5:40 PM Jeff Long <willco...@gmail.com> wrote: >> >>> The item size is vlen * sizeof (type), so you are seeing 16 * 512 >>> "samples". >>> >>> On Wed, Apr 20, 2022 at 1:44 PM George Edwards <gedwards....@gmail.com> >>> wrote: >>> >>>> Hello GNURadio Community, >>>> >>>> I have written a C++ OOT "sync" block with vector input and vector >>>> output (data type float). I wrote a line in my program to print the value >>>> of noutput_items on each GRC flow graph iteration and it alternately >>>> prints the values 15 and 16. This is surprising!!! I was expecting >>>> this value to be the 512, the number of elements in each input/output >>>> vector that I designed the OOT to operate at. In my OOT design, the >>>> input/output signatures were set to 512 floating point elements. In the GRC >>>> Flow graph my block is fed by a stream to vector block (which brings >>>> in vectors of 512 samples) and my block outputs its data to a vector >>>> to stream block (which takes a vector of 512 elements and converts to >>>> a data stream). >>>> >>>> I was under the impression that the parameter noutput_items in the >>>> work(...) function for an OOT sync block with vector input and output >>>> provided >>>> the number of elements in each output vector. >>>> >>>> I will appreciate any insight into this issue. >>>> >>>> Thanks! >>>> George >>>> >>>> >>>> >>>>