Exemplo n.º 1
0
    def inner(*args, **kwargs):
        #Add a graph

        comp = func(*args, **kwargs)
        g = Multigraph(comp.name+'_'+'wrapper')
        g.add_node(comp)
        #For each port, add
        #an "once" component
        for (in_name, in_port) in comp.inputs.items():
            in_node = SubIn('IN_'+in_name)
            once_node = Once('once_'+in_name)
            g.add_node(in_node)
            g.add_node(once_node)
            #Connect
            in_node.outputs.OUT.connect(once_node.inputs.IN)
            once_node.outputs.OUT.connect(in_port)
            #Export inputs
            g.inputs.export(in_node.inputs.IN, in_name)
        #Export outputs
        for (out_name, out_port) in comp.outputs.items():
            g.outputs.export(out_port, out_name)
        return g
Exemplo n.º 2
0
 def second_level(*args, **kwargs):
     comp = func(*args, **kwargs)
     g = Multigraph(comp.name + '_' + 'wrapper')
     g.add_node(comp)