示例#1
0
 def edges_to_block(self, block):
   G = self._connection_graph
   result = []
   in_edges = G.in_edges(block, data=True)
   for e in in_edges:
     result.append((e[0], e[1], ports_set(e[2])))
   return result
示例#2
0
 def connected_inputs(self, block):
   G = self._connection_graph
   result = []
   in_edges = G.in_edges(block, data=True)
   for e in in_edges:
     result.append(ports_set(e[2])[1])
   return iset(result)
示例#3
0
 def connected_outputs(self, block):
   G = self._connection_graph
   result = []
   out_edges = G.out_edges(block, data=True)
   for e in out_edges:
     result.append(ports_set(e[2])[0])
   return iset(result)
示例#4
0
 def edges_from_port(self, block, port):
   G = self._connection_graph
   result = []
   out_edges = G.out_edges(block, data=True)
   for e in out_edges:
     if e[2]['from_port'] == port:
       result.append((e[0], e[1], ports_set(e[2])))
   return result
示例#5
0
 def _colored_composte(self):
   ws = deepcopy(self._composite)
   G = ws._connection_graph
   for wave in self._wave_front:
     src = wave.src_block
     dst = wave.dst_block
     for v in G.edge[src][dst]:
       if ports_set(G.edge[src][dst][v]) == wave.edge[2]:
         G.edge[src][dst][v]['color'] = 'green'
   return ws