ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder#
Module Contents#
Classes#
Functions#
|
Attributes#
- ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.document_preamble_str = Multiline-String#
Show Value
"""\documentclass[tikz]{standalone} \usepackage{graphicx} % Required for inserting images \usepackage{tikz} \usetikzlibrary{shadows} \usepackage{xcolor} \usetikzlibrary{backgrounds} \usetikzlibrary {arrows.meta,automata,positioning,fit,calc} \definecolor{ProcessStepBackground}{HTML}{FFFAF0} \definecolor{IntermediateStateColour}{HTML}{949698} \tikzstyle{InfinitesimalNode}=[circle,draw=none,inner sep=0pt,minimum size=0pt] \tikzstyle{ProcessStepNode} =[fill=ProcessStepBackground,rounded corners] \tikzstyle{IdleState} =[fill=yellow,rounded corners] \tikzstyle{OutputState} =[fill=red,rounded corners] \tikzstyle{InputState} =[fill=green,rounded corners] \tikzstyle{IntermediateState} =[fill=IntermediateStateColour,rounded corners] \tikzstyle{Source} =[fill=ProcessStepBackground,circle] \tikzstyle{Sink} =[fill=ProcessStepBackground,circle] \tikzset{ diagonal fill/.style 2 args={fill=#2, path picture={ \fill[#1, sharp corners] (path picture bounding box.south west) -| (path picture bounding box.north east) -- cycle;}}, reversed diagonal fill/.style 2 args={fill=#2, path picture={ \fill[#1, sharp corners] (path picture bounding box.north west) |- (path picture bounding box.south east) -- cycle;}} } \tikzstyle{InputAndOutputState} =[diagonal fill={red}{green},rounded corners, drop shadow,draw ] \begin{document} \begin{tikzpicture}[->,auto,node distance=1cm,on grid,semithick]"""
- ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.document_preamble#
- ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.document_postamble = Multiline-String#
Show Value
"""\end{tikzpicture} \end{document} """
- ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.get_new_uuid() str#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.Direction#
- right: bool#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.EdgeOptions#
- edge_style: str#
- start_node_name: str#
- target_node_name: str#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.ForwardEdge#
- start_node_name: str#
- target_node_name: str#
- edge_style: str = '->'#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.BackwardEdge#
- start_node_name: str#
- target_node_name: str#
- edge_style: str = '<-'#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.IntermediateEdge#
- start_node_name: str#
- target_node_name: str#
- edge_style: str = '-'#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.NodeData#
- unique_name: str#
- display_name: str#
- process_state_name: str#
- edge_list: list[EdgeOptions]#
- tikz_options: str = ''#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.EmptyNodeData#
- unique_name: str#
- edge_list: list[EdgeOptions]#
- tikz_options: str = 'InfinitesimalNode'#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.StatePathConnector#
- start_state_name: str#
- target_state_name: str#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.MatrixRow#
-
- row_width: int#
- path_id: uuid.uuid4#
- state_path_connector: StatePathConnector#
- list_of_path_node_data: list[NodeData | EmptyNodeData]#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.ChildMatrixRow#
Bases:
MatrixRow
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.PathJunction#
- state_path_connector: StatePathConnector#
- state_connector: ethos_penalps.process_state_switch_selector.StateConnector#
- parrent_path_id: int#
- parrent_state_connector: ethos_penalps.process_state_switch_selector.StateConnector#
- insert_arround_center: bool#
- start_switch_state: str#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.StatePath#
- state_path_connector: StatePathConnector#
- current_state_name: str#
- last_state_connector: ethos_penalps.process_state_switch_selector.StateConnector | None#
- list_of_further_path_junctions: list[PathJunction]#
- unique_id: str#
- determine_number_of_unique_nodes() int#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.ChildStatePath#
Bases:
StatePath- parrent_unique_id: uuid.uuid4#
- nodes_names_of_parrent_branch: list[str]#
- all_node_list_with_matrix_nodes: list[NodeData | EmptyNodeData]#
- determine_number_of_unique_nodes()#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.MatrixRowPort#
-
- node_position: int#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.PathPortPair#
- left_parrent_port: MatrixRowPort#
- right_parrent_port: MatrixRowPort#
- parrent_inter_port_length: int#
- left_child_port: MatrixRowPort#
- right_child_port: MatrixRowPort#
- child_inter_port_length: int#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.EdgePath#
- list_of_edge_node_pairs: list[ForwardEdge | BackwardEdge | IntermediateEdge]#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.TikzSubMatrix#
- process_step_name: str#
- state_path_connector: StatePathConnector#
- sort_matrix_rows()#
- determine_row_ports(parrent_path: StatePath, child_path: ChildStatePath, invert_parrent_path_direction: bool) PathPortPair#
- create_matrix_child_row(parrent_path: StatePath, child_path: ChildStatePath, maximum_row_length: int, edge_direction: Direction, invert_parrent_path_direction: bool) MatrixRow#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.TikzMatrix#
- process_step_name: str#
- list_of_submatrices: list[TikzSubMatrix]#
- determine_row_width() int#
- add_sub_matrix(sub_matrix: TikzSubMatrix)#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.StatePathHandler#
- list_of_initial_junction_state_connectors: list[ethos_penalps.process_state_switch_selector.StateConnector]#
- list_of_remaining_paths: list[StatePathConnector, StatePath]#
- dict_of_all_juctions: dict[StatePathConnector, PathJunction]#
- list_of_remaining_junctions: list[StatePathConnector, PathJunction]#
- add_junction(path_junction: PathJunction)#
- pop_path_junction() PathJunction#
- determine_maximum_path_length()#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.ProcessStateMatrixBuilder(process_state_handler: ethos_penalps.process_state_handler.ProcessStateHandler, unique_process_state_names, display_names_dict)#
- create_edges_in_submatrix()#
- create_edge_from_node_pair(node_to_add_edge: NodeData | EmptyNodeData, start_node: NodeData | EmptyNodeData, target_node: NodeData | EmptyNodeData, direction: Direction)#
- create_process_state_matrix() TikzMatrix#
Loops over all process states
- create_sub_matrix_main_paths()#
Node collection starts at output stream providing state
- create_paths_from_junctions(maximum_iterator: int = 100)#
- create_sub_matrix_rows_from_paths() TikzSubMatrix#
- determine_edge_direction(state_path_connector: StatePathConnector) Direction#
- loop_over_node(terminate_at_state_connector_start: bool, state_path: StatePath, maximum_number_of_iterations: int = 100) StatePath#
- create_process_state_node(process_state_handler: ethos_penalps.process_state_handler.ProcessStateHandler, state_path: StatePath) NodeData#
- class ethos_penalps.post_processing.tikz_visualizations.process_chain_graph_builder.GraphBuilder(process_node_dict: dict[str, ethos_penalps.process_nodes.process_node.ProcessNode], enterprise_name: str, stream_handler: ethos_penalps.stream_handler.StreamHandler)#
- save_tex_file(full_path: str)#
- create_texfile(full_path: str)#
- create_node_section()#
- sort_node_dict_by_streams()#
- get_source_name()#
- create_stream_edge_section() str#
- identify_node_types(matrix: TikzMatrix, process_state_handler: ethos_penalps.process_state_handler.ProcessStateHandler) TikzMatrix#
- create_unique_node_names()#
Remove whitespaces from node names
- create_display_names()#
Remove whitespaces from node names
- create_title_node() str#
- create_source_node(process_node: ethos_penalps.process_nodes.source.Source | ethos_penalps.process_nodes.sink.Sink, node_above: str) str#
- convert_list_matrix_to_tex_string(tikz_matrix: TikzMatrix, node_above: str, process_step_name: str, first_node: bool) str#
- create_state_tikz_edges(state_path_handler: StatePathHandler) str#
- compile_pdf() str#
- convert_pdf_to_png(path_to_pdf: str) str#
- create_enterprise_graph(path_to_results_folder: str, show_graph: bool = True, output_format: str = 'pdf') str#