Subversion Repositories HomeAutomation

Rev

Rev 737 | Blame | Last modification | View Log | SVN | RSS feed

  1. ###########################################################
  2. #
  3. # The default implementation of the packet handler
  4. #
  5. ###########################################################
  6. from CanPktHandlerBase import CanPktHandlerBase
  7. from CanPkt import CanPkt
  8.  
  9. class CanPktHandler1(CanPktHandlerBase):
  10.    
  11.     daemonCfg = None
  12.    
  13.     def __init__ (self, daemonCfg):
  14.         self.daemonCfg = daemonCfg
  15.        
  16.     def input(self, strdata):
  17.         """Make data buffer into CanPkt and do early discard check """
  18.         """Call all filters in chain """
  19.        
  20.         if len(strdata) < 2:
  21.             return
  22.         if strdata[0:3] != 'PKT':
  23.             return
  24.  
  25.         pkt = CanPkt.stringToCanPkt(self, strdata)
  26.  
  27.         for filter in self.daemonCfg.filterChain:
  28.             fObj = self.daemonCfg.filterCfg.filterModules[filter]
  29.             fObj.filter(pkt, fObj.__ASSOCIATED_SPACES__)
  30.    
  31.    
  32.     def output(self, data):
  33.         pass
  34.