# HG changeset patch # User drewp@bigasterisk.com # Date 2013-06-15 21:25:45 # Node ID c0b09a24f6ca514dd69b13a07c2bd4dcd1f80673 # Parent cfc748f4ad2ed4345a71d4fd574658771f6fa465 subterm expression new function chan('channame'), replaces broken getsub one Ignore-this: d15f574725c0c6b96c511c22aa3efda0 diff --git a/light9/Submaster.py b/light9/Submaster.py --- a/light9/Submaster.py +++ b/light9/Submaster.py @@ -327,6 +327,9 @@ class Submasters(object): def get_sub_by_uri(self, uri): return self.submasters[uri] + def get_sub_by_name(self, name): + return get_sub_by_name(name, self) + # a global instance of Submasters, created on demand _submasters = None @@ -344,8 +347,9 @@ def get_sub_by_name(name, submasters=Non if not submasters: submasters = get_global_submasters() - if name in submasters.get_all_sub_names(): - return submasters.get_sub_by_name(name) + # get_all_sub_names went missing. needs rework + #if name in submasters.get_all_sub_names(): + # return submasters.get_sub_by_name(name) try: val = int(name) diff --git a/light9/curvecalc/subterm.py b/light9/curvecalc/subterm.py --- a/light9/curvecalc/subterm.py +++ b/light9/curvecalc/subterm.py @@ -140,6 +140,7 @@ class Subterm(object): glo = exprglo.exprGlobals(glo, t) glo['getsub'] = lambda name: self.submasters.get_sub_by_name(name) + glo['chan'] = lambda name: Submaster.Submaster("chan", {get_dmx_channel(name): 1}) try: self.lasteval = eval(expr, glo)