def process(self): signature = (len(self.inputs), len(self.outputs)) x = self.inputs['x'].sv_get(deepcopy=False) if signature == (2, 1): y = self.inputs['y'].sv_get(deepcopy=False) if self.outputs[0].is_linked: result = [] current_func = func_from_mode(self.current_op) if signature == (1, 1): result = recurse_fx(x, current_func) elif signature == (2, 1): result = recurse_fxy(x, y, current_func) elif signature == (1, 2): # special case at the moment result = recurse_fx(x, sin) result2 = recurse_fx(x, cos) self.outputs[1].sv_set(result2) self.outputs[0].sv_set(result)
def process(self): in_count = len(self.inputs) if in_count > 0: x = self.inputs['X'].sv_get(deepcopy=False) if in_count > 1: y = self.inputs['Y'].sv_get(deepcopy=False) # outputs if self.outputs['float'].is_linked: result = [] if in_count == 0: result = [[self.constant[self.items_]]] elif in_count == 1: result = recurse_fx(x, self.fx[self.items_]) elif in_count == 2: result = recurse_fxy(x, y, self.fxy[self.items_]) self.outputs['float'].sv_set(result)
def process(self): if not self.outputs['Gate'].is_linked: return if 'X' in self.inputs: x = self.inputs['X'].sv_get(deepcopy=False) if 'Y' in self.inputs: y = self.inputs['Y'].sv_get(deepcopy=False) out= [] if self.items_ in self.constant: out = [[self.constant[self.items_]]] elif self.items_ in self.fx: out = recurse_fx(x, self.fx[self.items_]) elif self.items_ in self.fxy: out = recurse_fxy(x, y, self.fxy[self.items_]) elif self.items_ in self.fxy2: out = recurse_fxy(x, y, self.fxy2[self.items_]) self.outputs['Gate'].sv_set(out)
def process(self): if not self.outputs['Gate'].is_linked: return if 'X' in self.inputs: x = self.inputs['X'].sv_get(deepcopy=False) if 'Y' in self.inputs: y = self.inputs['Y'].sv_get(deepcopy=False) out = [] if self.items_ in self.constant: out = [[self.constant[self.items_]]] elif self.items_ in self.fx: out = recurse_fx(x, self.fx[self.items_]) elif self.items_ in self.fxy: out = recurse_fxy(x, y, self.fxy[self.items_]) elif self.items_ in self.fxy2: out = recurse_fxy(x, y, self.fxy2[self.items_]) self.outputs['Gate'].sv_set(out)
def process(self): # inputs if not self.outputs["Gate"].is_linked: return if "X" in self.inputs: x = self.inputs["X"].sv_get(deepcopy=False) if "Y" in self.inputs: y = self.inputs["Y"].sv_get(deepcopy=False) # outputs out = [] if self.items_ in self.constant: out = [[self.constant[self.items_]]] elif self.items_ in self.fx: out = recurse_fx(x, self.fx[self.items_]) elif self.items_ in self.fxy: out = recurse_fxy(x, y, self.fxy[self.items_]) elif self.items_ in self.fxy2: out = recurse_fxy(x, y, self.fxy2[self.items_]) self.outputs["Gate"].sv_set(out)