view flax/Ports.py @ 895:de9b9d0eed62

try to cull out SyncedGraph.patch calls where the patch is a no-op Ignore-this: 139d15a635d85b506d5d0d3a60b6f307
author Drew Perttula <drewp@bigasterisk.com>
date Sun, 09 Jun 2013 01:06:43 +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