summaryrefslogtreecommitdiff
path: root/Pb_Api/Params.py
blob: fff06962b15f82e78a419f78e634c6df668d4365 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import pprint
class Pb_Api_Params(object):
    #so how do we need to change these?
    def param(self, name):
       for p in self.params: 
         if p.name == name:
           return p
       return None

    def __str__(self):
      return pprint.pformat({ "params": map(lambda x: vars(x), self.params) })

#do we need to add a simple __iter__ attribute to that class so that map will work, or is it already
#iterating? it is already



    def randomize(self):
       for el in self.params:
         if el.set_by_user:
           continue
         el.randomize()


    def is_ready(self):
       for p in self.params:
         if not p.is_ready():
           return 0
       return 1
    def as_hash(self):
       result = {}
       for p in self.params:
         result[p.name] = p.value
       return result