[Tinyos-commits] CVS: tinyos-1.x/tools/python/apps Listen.py, 1.2,
1.3
Kamin Whitehouse
kaminw at users.sourceforge.net
Wed Sep 28 19:19:17 PDT 2005
Update of /cvsroot/tinyos/tinyos-1.x/tools/python/apps
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29570/apps
Modified Files:
Listen.py
Log Message:
added the new MessageFilter functionality to the Listen menus. also added drawing of horizontal line. also simplified threading. I tried to fix the term reset problem after quitting but to no avail
Index: Listen.py
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/tools/python/apps/Listen.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** Listen.py 28 Sep 2005 10:04:52 -0000 1.2
--- Listen.py 29 Sep 2005 02:19:14 -0000 1.3
***************
*** 24,31 ****
#
! import sys, threading, time
import pytos.util.NescApp as NescApp
import pytos.util.ParseArgs as ParseArgs
import pytos.util.MessageSnooper as MessageSnooper
import pytos.util.KeyPress as KeyPress
import pytos.Comm as Comm
--- 24,32 ----
#
! import sys, threading, time, os
import pytos.util.NescApp as NescApp
import pytos.util.ParseArgs as ParseArgs
import pytos.util.MessageSnooper as MessageSnooper
+ import pytos.util.MessageFilter as MessageFilter
import pytos.util.KeyPress as KeyPress
import pytos.Comm as Comm
***************
*** 97,107 ****
q : quit
1-9 : verbosity
! c : toggle colors"""
print "\nType \"h\" for help\n"
msgQueue = Comm.MessageQueue(10)
self.keyPress = KeyPress.KeyPress()
! self.snooper = snooper
! self.snooper.register( msgQueue )
self.running = True
self.pausing = False
--- 98,111 ----
q : quit
1-9 : verbosity
! f : manage filters
! l : draw line now
! c : toggle colors
! """
print "\nType \"h\" for help\n"
msgQueue = Comm.MessageQueue(10)
self.keyPress = KeyPress.KeyPress()
! self.filter = MessageFilter.MessageFilter(app,snooper)
! self.filter.register(msgQueue)
self.running = True
self.pausing = False
***************
*** 110,122 ****
self.numPrintedChars = 0
! #start a thread to process the messages
! self.msgThread = threading.Thread(target=self.processMessages,
! args=(msgQueue,))
! #start a thread to process the key presses (make daemon so it dies when tk is killed)
! keyThread = threading.Thread(target=self.readKeys)
! keyThread.setDaemon(True)
! keyThread.start()
self.msgThread.start()
!
def processMessages(self, msgQueue) :
while True :
--- 114,123 ----
self.numPrintedChars = 0
! #start a thread to process the messages (make daemon so it dies when main thread stops)
! self.msgThread = threading.Thread(target=self.processMessages, args=(msgQueue,))
! self.msgThread.setDaemon(True)
self.msgThread.start()
! self.readKeys()
!
def processMessages(self, msgQueue) :
while True :
***************
*** 129,136 ****
def readKeys(self) :
! while True :
try :
key = self.keyPress.getChar(blocking=True)
! { 'q': self.msgThread._Thread__stop, #sys.exit,
'h': self.help,
'1': lambda : self.setVerbosity(key),
--- 130,139 ----
def readKeys(self) :
! self.reading = True
! while self.reading :
try :
key = self.keyPress.getChar(blocking=True)
! { 'q': self.stopReading, #sys.exit,
! '': self.stopReading, #sys.exit,
'h': self.help,
'1': lambda : self.setVerbosity(key),
***************
*** 143,155 ****
'8': lambda : self.setVerbosity(key),
'9': lambda : self.setVerbosity(key),
'c': self.colors,
'p': self.pause
}[key]()
except Exception, e:
! print e.args[0]
print "key %s not understood. Press \"h\" for help" % key
def setVerbosity(self, verbosity) :
self.verbosity = verbosity
def printMsg(self, msg) :
--- 146,175 ----
'8': lambda : self.setVerbosity(key),
'9': lambda : self.setVerbosity(key),
+ 'f': self.createFilter,
+ 'l': self.drawLine,
'c': self.colors,
'p': self.pause
}[key]()
except Exception, e:
! if len(e.args)>0:
! print e.args[0]
! else :
! raise
print "key %s not understood. Press \"h\" for help" % key
+ def createFilter(self) :
+ self.stop()
+ self.filter.userMenu()
+ self.start()
+
+ def drawLine(self) :
+ print " --------------- "
+
+ def stopReading(self) :
+ self.reading = False
+
def setVerbosity(self, verbosity) :
self.verbosity = verbosity
+ print "Verbosity is now %s" % self.verbosity
def printMsg(self, msg) :
***************
*** 166,173 ****
def printLostPackets(self):
!
!
! banner = "\nHit any key to resume. Messages lost: "
sys.stdout.write(banner)
while True:
time.sleep(1)
--- 186,193 ----
def printLostPackets(self):
! banner = "\nHit any key to resume. Messages lost: 0"
sys.stdout.write(banner)
+ sys.stdout.flush()
+ self.numPrintedChars=1
while True:
time.sleep(1)
***************
*** 196,201 ****
self.printLostPackets()
self.start()
-
-
def colors(self) :
--- 216,219 ----
***************
*** 215,216 ****
--- 233,235 ----
snooper = MessageSnooper.MessageSnooper(app)
listen = Listen(snooper)
+ # os.system('reset')
More information about the Tinyos-commits
mailing list