⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 motelist.py

📁 nesC写的heed算法
💻 PY
字号:
from Message import *from time import timefrom config import configclass WakeupMsg (Message):  sender = Message.data    def __init__(self):    Message.__init__(self)    self.set16(Message.BCAST, Message.addr)    self.set8(120, Message.type)    self.set8(2, Message.length)    self.set16(config.local_id, self.sender)class Motelist:  def periodic(self):    self.comm.send(self.msg)    self.timeoutmotes()    self.master.after(config.wakeup_period, self.periodic)  def __init__(self, master, comm, receiver, gui):    self.master = master    self.comm = comm    self.motes = {}    self.msg = WakeupMsg()    self.gui = gui    receiver.sethandler(122, self.wokeup)    self.periodic()  def wokeup(self, msg):    msg = FieldReplyMsg(msg)    sender = msg.getu16(FieldReplyMsg.sender)    print '%d is awake' % sender    self.awake(sender)  def timeoutmotes(self):    now = time()    for mote in self.motes.keys():      if self.motes[mote] + config.mote_timeout / 1000.0 < now:        self.asleep(mote)        print 'mote %d went away' % mote          def awake(self, mote):    redisplay = not self.motes.has_key(mote)    self.motes[mote] = time()    if redisplay:      self.redisplay()        def redisplay(self):    self.gui.setDestinations(self.motes.keys())  def asleep(self, mote):    del self.motes[mote]    self.redisplay()    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -