-
Couldn't load subscription status.
- Fork 0
Graph
Graph
graph(max_state_change = -1,
snapshot_timestamp = topylogic.START_STOP,
max_loop = topylogic.MAX_LOOPS,
lvl_verbose = topylogic.VERTICES + topylogic.EDGES + topylogic.FUNCTIONS + topylogic.GLOBALS,
context = topylogic.SINGLE,
mem_option = topylogic.CONTINUE
request_flag = topylogic.IGNORE_FAIL_REQUEST)
Create a graph
>>> g = topylogic.graph()Create a vertex Note: Should you set vertex_function to None, you must do v.set_callback(vertex_function) else the program will fail.
>>> v = g.set_vertex(id, vertex_function=None, vertex_glbl=None)Get the vertex in the graph
>>> v = g.vertex(id)Get the set of vertices connected to a vertex with an id
>>> vertices = g.vertices_connected_to(id)Get all vertices in the graph
>>> vertices = g.get_vertices()Get the set of edges connected from a vertex with an id
>>> edges = g.edges_connected_to(id)Remove a vertex
>>> g.remove_vertex(id)Create an edge between vertices with id1 and id2 Note: Should you set edge_function to None, you must do e.set_callback(edge_function) else the program will fail.
>>> e = g.set_edge(id1, id2, edge_function=None, edge_glbl=None)Get the edge in the graph that connects a vertex a to b with their id's
>>> e = g.edge(id1, id2)Get all edges in the graph
>>> edges = g.get_edges()Remove an edge between vertex a and b
>>> g.remove_edge(id_a, id_b)Create a bi directional edge between vertices with id1 and id2
>>> bi_e = g.set_bi_edge(id1, id2, edge_function, edge_variables)
>>> edge_1_to_2 = bi_e.edge_a_to_b
>>> edge_2_to_1 = bi_e.edge_b_to_aGet the bi edge in the graph that connects a vertex a to b with their id's
>>> bi_e = g.bi_edge(id1, id2)Remove a bi-directional edge between vertex a and b
>>> g.remove_bi_edge(id_a, id_b)Set the starting state of one vertex
>>> v1 = g.set_vertex(id1, vertex_function, vertex1_variables)
>>> v2 = g.set_vertex(id2, another_vertex_function, vertex2_variables)
>>> e = g.set_edge(id1, id2, edge_function, edge_variables)
>>> g.set_starting_vertex(id1)Set the starting state set using the id's of the vertices
>>> v1 = g.set_vertex(id1, vertex_function, vertex1_variables)
>>> v2 = g.set_vertex(id2, another_vertex_function, vertex2_variables)
>>> e = g.set_edge(id1, id2, edge_function, edge_variables)
>>> g.set_starting_vertices([id1, id2])Run the graph. The number of vertex results passed to run must be equal to the number of vertices in the starting set.
>>> vr1 = topylogic.vertex_result(var1, var2)
>>> vr2 = topylogic.vertex_result(var3, var4)
>>> g.run([vr1, vr2])Run the graph. Run only one vertex.
>>> vr = topylogic.vertex_result(var1, var2)
>>> g.run_one(vr)Submit a request
>>> g.submit_request(request_type, request)Submit a generic request (one that simply calls a function)
>>> def f(args):
#Do something
>>> g.submit_generic_request(args, f)Process requests (you shouldn't need to call this)
>>> g.process_requests()Pause the graph
>>> g.pause_graph()Resume the graph
>>> g.resume_graph()Destroy a graph
>>> g.destroy()