commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r8776 - gnuradio/branches/developers/eb/sched-wip/gr-p


From: eb
Subject: [Commit-gnuradio] r8776 - gnuradio/branches/developers/eb/sched-wip/gr-pager/src
Date: Thu, 3 Jul 2008 18:08:05 -0600 (MDT)

Author: eb
Date: 2008-07-03 18:08:04 -0600 (Thu, 03 Jul 2008)
New Revision: 8776

Added:
   gnuradio/branches/developers/eb/sched-wip/gr-pager/src/pager_utils.py
Modified:
   gnuradio/branches/developers/eb/sched-wip/gr-pager/src/Makefile.am
   gnuradio/branches/developers/eb/sched-wip/gr-pager/src/__init__.py
   gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex.py
   gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex_all.py
   gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex_band.py
Log:
pager code now exits at EOF

Modified: gnuradio/branches/developers/eb/sched-wip/gr-pager/src/Makefile.am
===================================================================
--- gnuradio/branches/developers/eb/sched-wip/gr-pager/src/Makefile.am  
2008-07-03 23:51:27 UTC (rev 8775)
+++ gnuradio/branches/developers/eb/sched-wip/gr-pager/src/Makefile.am  
2008-07-04 00:08:04 UTC (rev 8776)
@@ -71,8 +71,9 @@
 ourpython_PYTHON = \
     __init__.py \
     pager_swig.py \
+    pager_utils.py \
     flex_demod.py
-        
+
 ourlib_LTLIBRARIES = _pager_swig.la
 
 # These are the source files that go into the shared library

Modified: gnuradio/branches/developers/eb/sched-wip/gr-pager/src/__init__.py
===================================================================
--- gnuradio/branches/developers/eb/sched-wip/gr-pager/src/__init__.py  
2008-07-03 23:51:27 UTC (rev 8775)
+++ gnuradio/branches/developers/eb/sched-wip/gr-pager/src/__init__.py  
2008-07-04 00:08:04 UTC (rev 8776)
@@ -23,3 +23,4 @@
 
 from pager_swig import *
 from flex_demod import flex_demod
+from pager_utils import *

Added: gnuradio/branches/developers/eb/sched-wip/gr-pager/src/pager_utils.py
===================================================================
--- gnuradio/branches/developers/eb/sched-wip/gr-pager/src/pager_utils.py       
                        (rev 0)
+++ gnuradio/branches/developers/eb/sched-wip/gr-pager/src/pager_utils.py       
2008-07-04 00:08:04 UTC (rev 8776)
@@ -0,0 +1,45 @@
+#
+# Copyright 2008 Free Software Foundation, Inc.
+# 
+# This file is part of GNU Radio
+# 
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+# 
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+
+def make_trans_table():
+    table = 256 * ['.']
+    for i in range(256):
+        if (i < 32):
+            table[i] = '.'
+        else:
+            table[i] = chr(i)
+    return ''.join(table)
+
+_trans_table = make_trans_table()
+
+def make_printable(s):
+    return s.translate(_trans_table)
+
+class top_block_runner(_threading.Thread):
+    def __init__(self, tb):
+        _threading.Thread.__init__(self)
+        self.setDaemon(1)
+        self.tb = tb
+        self.done = False
+        self.start()
+
+    def run(self):
+        self.tb.run()
+        self.done = True


Property changes on: 
gnuradio/branches/developers/eb/sched-wip/gr-pager/src/pager_utils.py
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex.py
===================================================================
--- gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex.py 
2008-07-03 23:51:27 UTC (rev 8775)
+++ gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex.py 
2008-07-04 00:08:04 UTC (rev 8776)
@@ -160,27 +160,24 @@
     # Flow graph emits pages into message queue
     queue = gr.msg_queue()
     tb = app_top_block(options, queue)
+    runner = pager.top_block_runner(tb)
     
     try:
-        tb.start()
        while 1:
            if not queue.empty_p():
                msg = queue.delete_head() # Blocking read
                page = join(split(msg.to_string(), chr(128)), '|')
-               disp = []
-               for n in range(len(page)):
-                   if ord(page[n]) < 32:
-                       disp.append('.')
-                   else:
-                       disp.append(page[n])
-               print join(disp, '')
+                s = pager.make_printable(page)
+                print s
                tb.adjust_freq()
-                                                                               
+            elif runner.done:
+                break
            else:
                time.sleep(1)
 
     except KeyboardInterrupt:
         tb.stop()
+        runner = None
 
 if __name__ == "__main__":
     main()

Modified: 
gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex_all.py
===================================================================
--- gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex_all.py     
2008-07-03 23:51:27 UTC (rev 8775)
+++ gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex_all.py     
2008-07-04 00:08:04 UTC (rev 8776)
@@ -77,25 +77,22 @@
     queue = gr.msg_queue()
     tb = app_top_block(options, queue)
 
+    runner = pager.top_block_runner(tb)
     try:
-        tb.start()
        while 1:
            if not queue.empty_p():
                msg = queue.delete_head() # Blocking read
                page = join(split(msg.to_string(), chr(128)), '|')
-               disp = []
-               for n in range(len(page)):
-                   if ord(page[n]) < 32:
-                       disp.append('.')
-                   else:
-                       disp.append(page[n])
-               print join(disp, '')
-                                               
+                s = pager.make_printable(page)
+                print s
+            elif runner.done:
+                break
            else:
-               time.sleep(1)
+               time.sleep(0.05)
 
     except KeyboardInterrupt:
         tb.stop()
+        runner = None
     
 if __name__ == "__main__":
     main()

Modified: 
gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex_band.py
===================================================================
--- gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex_band.py    
2008-07-03 23:51:27 UTC (rev 8775)
+++ gnuradio/branches/developers/eb/sched-wip/gr-pager/src/usrp_flex_band.py    
2008-07-04 00:08:04 UTC (rev 8776)
@@ -60,20 +60,6 @@
        del self.subdev
        
 
-
-class top_block_runner(_threading.Thread):
-    def __init__(self, tb):
-        _threading.Thread.__init__(self)
-        self.setDaemon(1)
-        self.tb = tb
-        self.done = False
-        self.start()
-
-    def run(self):
-        self.tb.run()
-        self.done = True
-
-
 def main():
     parser = OptionParser(option_class=eng_option)
     parser.add_option("-f", "--frequency", type="eng_float", default=929.5e6,
@@ -98,27 +84,20 @@
     queue = gr.msg_queue()
     tb = app_top_block(options, queue)
 
-    runner = top_block_runner(tb)
+    runner = pager.top_block_runner(tb)
     try:
        while 1:
            if not queue.empty_p():
                msg = queue.delete_head() # Blocking read
                page = join(split(msg.to_string(), chr(128)), '|')
-               disp = []
-               for n in range(len(page)):
-                   if ord(page[n]) < 32:
-                       disp.append('.')
-                   else:
-                       disp.append(page[n])
-               print join(disp, '')
-                                               
+                s = pager.make_printable(page)
+                print s
             elif runner.done:
                 break
            else:
                time.sleep(0.05)
 
     except KeyboardInterrupt:
-        print "Keyboard Interrupt..."
         tb.stop()
         runner = None
     





reply via email to

[Prev in Thread] Current Thread [Next in Thread]