def __init__(self, graph, subterm, saveContext, curveset): self.graph, self.uri = graph, subterm self.saveContext = saveContext self.curveset = curveset self.ensureExpression(saveContext) self.submasters = Submaster.get_global_submasters(self.graph)
def send_dmx(self,t): dispatcher.send("curves to sliders", t=t) scaledsubs=[] for st in self.subterms: scl = st.scaled(t) scaledsubs.append(scl) out = Submaster.sub_maxes(*scaledsubs) levs = out.get_levels() now=time.time() if now-self.lastsendtime>5 or levs!=self.lastsendlevs: dispatcher.send("output levels",val=levs) dmxclient.outputlevels(out.get_dmx_list(), twisted=1,clientid='curvecalc') self.lastsendtime = now self.lastsendlevs = levs
def combineOutputs(self, outputs): """pick usable effect outputs and reduce them into one for sendOutput""" outputs = [x for x in outputs if isinstance(x, Submaster.Submaster)] out = Submaster.sub_maxes(*outputs) return out