view flax/Ports.py @ 617:94039df5cdd9

create Playlist class which is now used in wavecurve, musicPad, and ascoltami2. Ignore-this: da54d0239906e81ad5d95741d22f5975 Several other refactorings. Also, totally untested.
author David McClosky <dmcc@bigasterisk.com>
date Tue, 22 Jun 2010 04:41:11 +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