def generate_function_signature(self, model): print(model.name) input = model.inputs output = model.outputs inout = input + output outname = [o.name for o in output] tab = [] # initialization inputs for inp in inout: if inp.name not in outname: if inp.name not in tab: tab.append(inp) if sys.version_info[0] >= 3: init_inp = tab.copy() else: init_inp = tab # Compute name from title. # We need an explicit name rather than infering it from Title #name = desc.Title code = '\n\ndef init_%s(' % (signature(model)) code_size = len(code) #_input_names = [inp.name.lower() for inp in inputs] ins = [my_input(inp) for inp in init_inp] separator = ',\n' + code_size * ' ' code += separator.join(ins) code += '):\n' return code
def decl(self, defa=True): info_var = self.info_minout() inp = [m.name for m in self.meta_inp(self.name)] declaration = "" tab = ' ' * 4 for k, v in info_var.items(): for j in v[0]: #print(j) if j.name not in inp: declaration += tab + "cdef " + my_input(j, defa) + "\n" inp.append(j.name) for w in v[1]: if w.name not in inp: #print(w, w.name) declaration += tab + "cdef " + my_input(w, defa) + "\n" inp.append(w.name) return declaration
def generate_function_signature(self, model): tab = [] # initialization inputs for inp in model.inputs: if "variablecategory" in dir(inp) and inp.variablecategory in ( "auxiliary"): tab.append(inp) if "parametercategory" in dir(inp): tab.append(inp) init_inp = tab.copy() inputs = init_inp # Compute name from title. # We need an explicit name rather than infering it from Title #name = desc.Title code = '\n\ndef init_%s(' % (signature(model)) code_size = len(code) #_input_names = [inp.name.lower() for inp in inputs] ins = [my_input(inp) for inp in inputs] separator = ',\n' + code_size * ' ' code += separator.join(ins) code += '):\n' return code
def assignParam(self): h = 'from datetime import datetime\n' for m in self.model.inputs: if "parametercategory" in dir(m): h += "cdef " + my_input(m) + "\n" return h