import config
+import db
import gobject
def __init__ ( self ) :
gobject.GObject.__init__( self )
self.scan_timeout = 0
+ self.db = db.database( os.path.join( conf.homedir , "wifireplay.db" )
# Values specific to replaying
self._file = os.path.join( conf.homedir , "wiscan_gui.info" )
def start ( self , timeout=5000 ) :
self.scan_timeout = timeout
+ self.db.open()
self._fd = open( self._file )
self._current = self._fd.readline().split()
def stop ( self ) :
self.scan_timeout = 0
+ self.db.close()
self._fd.close()
def scan ( self ) :
delta = float(next[0]) - float(self._current[0])
gobject.timeout_add( int(1000 / self._speed * delta) , self.scan )
- self.info = self._current[1:8]
+ self.info = [ self._current[1] ]
+ self.info.extend( map( lambda x : float(x) , self._current[2:8] ) )
if self.info[0] == "FIX" :
self.ngps += 1
self.nfp += 1
self.scanlist[ self._current[n] ] = int(self._current[n+1])
+ for mac,max_rss in self.scanlist.iteritems() :
+ stored = self.db.get( mac )
+ if stored :
+ if stored[0] > max_rss :
+ max_rss = stored[0]
+ self.db.update( mac , max_rss , self.tstamp , self.info[4:] )
+ else :
+ self.newap += 1
+ self.db.add( mac , max_rss , self.tstamp , self.info[4:] )
+
self._current = next
def report ( self ) :