view flax/Ports.py @ 1436:d0d5900a8031

collector run the blocking dmx output calls in another thread, so they don't add delay to our http server Ignore-this: b5385085b654e1ac0b8018e6813f36e
author drewp@bigasterisk.com
date Sat, 11 Jun 2016 20:30:34 +0000
parents 45b12307c695
children
line wrap: on
line source

# super rough code

class AbstractPort:
    def __init__(self):
        pass
    def put_data(self, value):
        pass
    def get_data(self):
        pass

class Port(AbstractPort):
    "Connects from a node to exactly one node."
    def __init__(self, value=None):
        AbstractPort.__init__(self)
        self.value = value
    def put_data(self, value):
        self.value = value
    def get_data(self):
        return self.value

class MultiPort(AbstractPort):
    "Connects from a node to any number of nodes."
    def __init__(self, values=None):
        AbstractPort.__init__(self)
        self.values = values
    def put_data(self, values):
        self.values = values
    def get_data(self):
        return self.values