view flax/Ports.py @ 1587:2c973af2b13e

refactor light9-device-settings settings table Ignore-this: 7685c17a0a1c5f46764aeab8c181698a
author Drew Perttula <drewp@bigasterisk.com>
date Tue, 30 May 2017 08:54:24 +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