feat: improved readibility by hiding transparent iogams and bridge ds
This commit is contained in:
+16
-4
@@ -197,6 +197,11 @@ def __doc_iogam__(id, obj, edges, thread):
|
||||
inode += "<td port='out_0'></td></tr>"
|
||||
inode += "</table>>"
|
||||
inode += "];\n"
|
||||
if not bold:
|
||||
e_in, e_out = edges[-2:]
|
||||
edges = edges[:-2]
|
||||
edges.append((e_in[0], e_out[1], thread))
|
||||
inode = ""
|
||||
node += inode
|
||||
irows = []
|
||||
orows = []
|
||||
@@ -332,7 +337,7 @@ def __doc_gam__(label, obj, edges, thread, classfilter=True):
|
||||
return node, edges
|
||||
|
||||
|
||||
def __process_gamds__(name, signals, edges):
|
||||
def __process_gamds__(name, cls, signals, edges):
|
||||
node = ""
|
||||
outputs = {}
|
||||
inputs = {}
|
||||
@@ -386,7 +391,7 @@ def __process_gamds__(name, signals, edges):
|
||||
f"<{doc.format_name(sig_name)}> {sig_name} ({doc.type_to_string(sig_type)})"
|
||||
)
|
||||
if node:
|
||||
node = f'{name} [label="{name}\nGAMDataSource | {node}", color=blue];\n'
|
||||
node = f'{name} [label="{name}\n{cls} | {node}", color=blue];\n'
|
||||
return node, edges
|
||||
|
||||
|
||||
@@ -410,8 +415,8 @@ def __process_ds__(name, obj, edges):
|
||||
elif thread != edge[-1]:
|
||||
multi_thread = True
|
||||
if sigs:
|
||||
if cls == "GAMDataSource":
|
||||
node, edges = __process_gamds__(name, sigs, edges)
|
||||
if cls == "GAMDataSource" or cls == "RealTimeThreadAsyncBridge":
|
||||
node, edges = __process_gamds__(name, cls, sigs, edges)
|
||||
else:
|
||||
order = []
|
||||
lost = []
|
||||
@@ -447,6 +452,13 @@ def __process_ds__(name, obj, edges):
|
||||
|
||||
|
||||
def __process_edges__(edges, datasources):
|
||||
# remove duplicated edges
|
||||
clean_edges = []
|
||||
for edge in edges:
|
||||
if edge not in clean_edges:
|
||||
clean_edges.append(edge)
|
||||
edges = clean_edges
|
||||
# generate arrows
|
||||
arrows = ""
|
||||
for source, target, _ in edges:
|
||||
src_obj = source[0]
|
||||
|
||||
Reference in New Issue
Block a user