import json class State(object): IGNORE = frozenset(['Coude', 'Noeud', 'P24', 'P0', 'Pulse']) # these components do not have any states (value/ true or flase...) Breakpoints = ['Relais'] #possibility to add other breakpoints in the future ;) def __init__(self, cocosim_server): self.cocosim_server = cocosim_server self.conf = self.cocosim_server.conf["ui"] self.composants = {} self._exception = None def load_conf(self, schema_d): # Chargement des blocs for nom, valeur in schema_d['blocs'].items(): if valeur['type'] not in self.IGNORE: self.composants[nom] = None def to_json(self): if self._exception: return json.dumps({'exn': self._exception}) else: return json.dumps(self.composants) def __iter__(self): return self.conf.__iter__ def items(self): return self.composants.items() def keys(self): return self.composants.keys() def update(self, nom, valeur): self.composants[nom] = valeur def exception(self, e): self._exception = e def reset_exception(self): self._exception = None