[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] fundamentals of block-connections, message queue
Re: [Discuss-gnuradio] fundamentals of block-connections, message queue etc.
Tue, 25 Aug 2009 20:08:53 -0700
Within the BBN RX side, all the processing blocks are stuck together so that data "streams" from each block to the next. In the final block, when a packet is successfully decoded it is loaded in a message queue. The loading into the message queue is done within the C++ code, not the python.
There is another thread running that will sleep on an empty queue and will not wake up until something is inserted into the queue. When a message enters the queue, the thread wakes up, takes out the message and then prints it out via a call back function.
Check the source code for the message queue to see if there is another function to add a message.
On Tue, Aug 25, 2009 at 8:08 AM, Ulrika Uppman <address@hidden>
I'm trying to get a grip of how the software code works in gnuradio. At the moment I'm looking at the bbn 802.11b rx implementation.
I would like to understand how the data stream is transported from the usrp source block and further to the rest of the processing blocks that are connected together. There is a message queue involved, but how and where is the data added to the queue? Is there another way of putting data in the message queue than using the inset_tail function?
I have read the general documentation on how the gnuradio code is built by David Shen, and I have also been reading the gr code, but I still can't seem to figure it all out. Can someone please point me in the right direction on where to look for this kind of documentation?
Discuss-gnuradio mailing list