diff options
author | Johnathan Corgan <jcorgan@corganenterprises.com> | 2012-01-27 14:00:52 -0800 |
---|---|---|
committer | Johnathan Corgan <jcorgan@corganenterprises.com> | 2012-01-27 14:00:52 -0800 |
commit | 29aa72d4499361e661886dbfe7833bcc2c6f3746 (patch) | |
tree | e4bcc65ee249bfc940909cc438c81b009c6c5c8b /gr-uhd/apps/uhd_fft.py | |
parent | 8ddd8fbb0d780072081215db432aaf59d4a46dda (diff) | |
parent | 40e186f953abafe4fde19cf2cf34d61d801c31e2 (diff) |
Merge branch 'gr-uhd-async-msg-recv'
Diffstat (limited to 'gr-uhd/apps/uhd_fft.py')
-rwxr-xr-x | gr-uhd/apps/uhd_fft.py | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/gr-uhd/apps/uhd_fft.py b/gr-uhd/apps/uhd_fft.py index f311a903bb..0d800d1859 100755 --- a/gr-uhd/apps/uhd_fft.py +++ b/gr-uhd/apps/uhd_fft.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -# Copyright 2011 Free Software Foundation, Inc. +# Copyright 2012 Free Software Foundation, Inc. # # This file is part of GNU Radio # @@ -20,7 +20,7 @@ # Boston, MA 02110-1301, USA. # -from gnuradio import gr +from gnuradio import gr, gru from gnuradio import uhd from gnuradio import eng_notation from gnuradio.eng_option import eng_option @@ -75,6 +75,8 @@ class app_top_block(stdgui2.std_top_block): help="Set wire format from USRP [default=%default]") parser.add_option("", "--scalar", type="int", default=1024, help="Set scalar multiplier value sc8 wire format [default=%default]") + parser.add_option("", "--show-async-msg", action="store_true", default=False, + help="Show asynchronous message notifications from UHD [default=%default]") (options, args) = parser.parse_args() if len(args) != 0: parser.print_help() @@ -146,6 +148,16 @@ class app_top_block(stdgui2.std_top_block): if not(self.set_freq(options.freq)): self._set_status_msg("Failed to set initial frequency") + # Direct asynchronous notifications to callback function + if self.options.show_async_msg: + self.async_msgq = gr.msg_queue(0) + self.async_src = uhd.amsg_source("", self.async_msgq) + self.async_rcv = gru.msgq_runner(self.async_msgq, self.async_callback) + + def async_callback(self, msg): + md = self.async_src.msg_to_async_metadata_t(msg) + print "Channel: %i Time: %f Event: %i" % (md.channel, md.time_spec.get_real_secs(), md.event_code) + def _set_status_msg(self, msg): self.frame.GetStatusBar().SetStatusText(msg, 0) |