comparison NodeType.py @ 0:45b12307c695

Initial revision
author drewp
date Wed, 03 Jul 2002 09:37:57 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:45b12307c695
1 """each node descends from this base class"""
2
3 class NodeType:
4 def __init__(self):
5 """TBD"""
6 self.ops = Ops()
7
8 ''' maybe
9 self.iports = []
10 self.oports = []
11 self.params = []
12 '''
13 def get_state(self, stateaccess):
14 """This is similar to the pickle.__getstate__ method, except
15 we need this alternate version in order to give the node
16 (which holds no state) access to its instance's state.
17
18 If your node keeps some transient items in its state dict
19 (such as a buffer of recently received inputs), it may want to
20 return a copy of the state dict without those items. set_state
21 should restore them properly (if they're missing from the
22 current state, which they might not be).
23
24 get_state might be called at any time, and it's certainly not
25 guaranteed that the node instance is going out of service.
26 get_state might get called to checkpoint the nodes for a
27 backup, for example. set_state might also get called anytime.
28 """
29 return stateaccess
30 def set_state(self, stateaccess, dict):
31 """dict (named after the pickle.__setstate__ argument) is
32 always a value that was previously returned from
33 get_state. Don't adjust the current nodetype's state, of course;
34 use dict to update stateaccess. If there were elements
35 missing from dict (see the note in get_state for why this
36 might be the case), you should restore them here as
37 appropriate.
38 """
39 stateaccess.update(dict)
40 def get_default_params(self):
41 '''Returns dictionary of param names and DataType instances. DataTypes
42 can be given values'''
43 return {}
44 def get_default_ports(self):
45 '''Returns pinless port objects'''
46 return {}