diff --git a/src/graph.py b/src/graph.py index 0eee6a7fbad7fbd37c5c29706168f7cad39923e2..3d46eac07bd8287b047345d9ceb8bb568e9393f2 100644 --- a/src/graph.py +++ b/src/graph.py @@ -311,8 +311,26 @@ class Graph(): return user_view, user_view_with_subworkflows + def get_user_view_graph_georges_algo(self, relevant_processes = []): + #For now i'm only gonna work from the flattened dico + self.initialise_flattened_dico(self.dico_process_dependency_graph) + #self.initialise_flattened_dico(self.full_dico) + dico = self.dico_flattened + + user_view, self.new_nodes_user_view = relev_user_view_builder(dico, relevant_modules=relevant_processes) + + with open(self.get_output_dir()/ "graphs/user_view.json", 'w') as output_file : + json.dump(user_view, output_file, indent=4) + + + user_view_with_subworkflows = add_subworkflows_2_dico(self.dico_process_dependency_graph, user_view) + with open(self.get_output_dir()/ "graphs/user_view_with_subworkflows.json", 'w') as output_file : + json.dump(user_view_with_subworkflows, output_file, indent=4) + + return user_view, user_view_with_subworkflows + def generate_user_view(self, relevant_processes = [], render_graphs = True): - user_view, user_view_with_subworkflows = self.get_user_view_graph(relevant_processes = relevant_processes) + user_view, user_view_with_subworkflows = self.get_user_view_graph_georges_algo(relevant_processes = relevant_processes) self.user_view_with_subworkflows = user_view_with_subworkflows generate_graph(self.get_output_dir()/'graphs'/"user_view", user_view, label_edge=True, label_node=True, render_graphs = render_graphs, root = False, relevant_nodes = copy.deepcopy(relevant_processes)) generate_graph(self.get_output_dir()/'graphs'/"user_view_with_subworkflows", user_view_with_subworkflows, label_edge=True, label_node=True, render_graphs = render_graphs, root = False, relevant_nodes = copy.deepcopy(relevant_processes))