Example #1
0
class BasicSetup(unittest.TestCase):
    
    def setUp(self):
        self.collector = DataCollector()
        self.ch1 = self.collector.addChannel("one", 4, 1)
        self.ch2 = self.collector.addChannel("two", 4, 1)
        self.ch3 = self.collector.addChannel("three", 4, 1)
        self.ch4 = self.collector.addChannel("four", 4, 1)

    def tearDown(self):
        pass
Example #2
0
class Case02_Combining(unittest.TestCase):
    
    def setUp(self):
        print "***************"
        self.collector = DataCollector()
        self.ch1 = self.collector.addChannel("one", 2, 2)
        self.ch2 = self.collector.addChannel("two", 2, 3)

    def tearDown(self):
        pass
    
    
    def test01_WhatAboutCombining(self):
        collector = self.collector
        for i in range(6):
            collector.put(TEST_DATA[i])
        self.assertEquals(self.ch1.history[0], [175.2, 208.75])
        self.assertEquals(self.ch2.history[0], [198.7/3, 201.4/3])
Example #3
0
class Biofeed(object):
    
    def __init__(self, limit=None):
        self.collector = DataCollector(limit=limit)
        self.manager = biofeedFilter.BioFilterManager(self.collector)
        #self.manager = biofeedFilter.BioFilterManager()
        self.dsus = []
        
    def start(self):
        self.manager.start()
        for dsu in self.dsus:
            dsu.start()
            
    def stop(self):
        for dsu in self.dsus:
            dsu.stop()
        self.manager.stop()
        
    def addDsu(self, port, channels, serial=None, saveToFile=None):
        """ 
        Add a DSU to biofeed, giving the com port number and the number of channels it has
        serial is intended for passing in a dummy when testing: ignore in normal use.
        """
        serialConnection = serial if serial else SerialDataSource(port, channels, saveToFile=saveToFile)
        self.dsus.append(Dsu(self.manager.src, serialConnection))
        
    def addChannel(self, name, port, ch, filters, size, combine):
        """ 
        Add a named channel to biofeed giving the com port, channel (0 based index of DSU ch) and a list of filters to apply
        """
        self.manager.addChannel(name, port, ch, filters)
        return self.collector.addChannel(name, size, combine)
        
    
    ## just for testing really
    def _pump(self):#single threaded single get/put
        for dsu in self.dsus:
            dsu.pump()
        self.manager.pump()
    
    def _hasReachedLimit(self):
        return self.collector.reachedLimit
Example #4
0
 def setUp(self):
     print "***************"
     self.collector = DataCollector()
     self.ch1 = self.collector.addChannel("one", 2, 2)
     self.ch2 = self.collector.addChannel("two", 2, 3)
Example #5
0
 def setUp(self):
     self.collector = DataCollector()
     self.ch1 = self.collector.addChannel("one", 4, 1)
     self.ch2 = self.collector.addChannel("two", 4, 1)
     self.ch3 = self.collector.addChannel("three", 4, 1)
     self.ch4 = self.collector.addChannel("four", 4, 1)
Example #6
0
 def __init__(self, limit=None):
     self.collector = DataCollector(limit=limit)
     self.manager = biofeedFilter.BioFilterManager(self.collector)
     #self.manager = biofeedFilter.BioFilterManager()
     self.dsus = []