Mercurial > code > home > repos > light9
view op.py @ 0:45b12307c695
Initial revision
author | drewp |
---|---|
date | Wed, 03 Jul 2002 09:37:57 +0000 |
parents | |
children |
line wrap: on
line source
"""each node type has an Op within it""" class Op: """nodes can have several versions of their operation function. ops don't return anything! """ def __init__(self): """This should not be overridden without being called.""" pass def inputschanged(self, input, output, stateaccess): """If you only define one op function body, make it this one. """ pass def created(self, input, output, stateaccess): """This is called one time when the node is newly created. It's not called when the node instance is pickled/unpickled. Use this version to initialize state. """ # an extra call to changed() should help the outputs get set # correctly before any real inputs-changed events come around # (assuming this method doesn't get overridden with a # specialized version) self.inputschanged(input, output, stateaccess) def parameterschanged(self, input, output, stateaccess): self.inputschanged(input, output, stateaccess) def clocked(self, input, output, stateaccess): self.inputschanged(input, output, stateaccess)