diff --git a/Nodes/gamma.py b/Nodes/gamma.py new file mode 100644 --- /dev/null +++ b/Nodes/gamma.py @@ -0,0 +1,32 @@ +"""node that performs a simple gamma (exp) function on its input""" + +class GammaOps(Ops): + def started(self, input, output, stateaccess): + self.startmeup(stateaccess) + def changed(self, input, output, stateaccess): + port.output = port.input ** stateaccess.gamma + stateaccess.offset + stateaccess.lastvalue = State.FloatingPoint(port.input) + + output = gamma(input) + # no timed function + def startmeup(self, stateaccess): + # whatever + pass + +class Gamma(Node): + def __init__(self): + Node.__init__(self) + self.node_params = {'gamma':State.FloatingPoint,'offset':State.FloatingPoint} + self.ops = GammaOps() + + def getnodeparams(self): + return self.node_params + + def getports(self): + return (Port('a', optional=1), + Port('b')) + + def __str__(self): + return "3" + +world.register_node(Gamma)