def test_generate_v4(self): dst=io.StringIO() builder=XmlV4StreamGraphBuilder(dst) _build_test_graph_v4(builder) dst.seek(0) (gt,gi)=load_graph(dst, "") _check_test_graph_v4(self, gi)
default=".*") parser.add_argument('--output', default="graph.dot") args = parser.parse_args() shapes = [ "oval", "box", "diamond", "pentagon", "hexagon", "septagon", "octagon" ] colors = ["blue4", "red4", "green4"] reDeviceTypeFilter = re.compile(args.deviceTypeFilter) deviceTypeToShape = {} if args.graph == "-": graph = load_graph(sys.stdin, "<stdin>") else: graph = load_graph(args.graph, args.graph) assert graph.metadata != None, "Graph instance has no metadata, so can't contain a placement." found = [] for k in graph.metadata: if k.startswith("dt10.partitions."): found.append(int(k[16:])) assert len(found) > 0, "Didn't find any dt10.partitions.N keys in metadata." assert len(found) < 2, "Found multiple partitions: {}".format(found) select = found[0]
from graph.snapshots import extractSnapshotInstances import sys import os import argparse from PIL import Image parser=argparse.ArgumentParser("Render a graph to bitmap fields.") parser.add_argument('graph', metavar="G") parser.add_argument('snapshots', metavar="S") parser.add_argument('--bind-dev',dest="bind_dev",metavar=("idFilter","property|state|rts","name","expression"), nargs=4,action="append",default=[]) parser.add_argument('--output-prefix', dest="output_prefix", default="graph") args=parser.parse_args() graph=load_graph(args.graph) if graph.graph_type.native_dimension!=2: raise RuntimeError("This graph doesn't seem to be a 2d field.") scaleX=1 scaleY=1 minX=100000000000000 maxX=-100000000000000 minY=100000000000000 maxY=-100000000000000 for di in graph.device_instances.values(): if di.native_location==None: raise RuntimeError("No location for device {}".format(di.id))
#!/usr/bin/env python3 from graph.load_xml import load_graph from graph.save_xml import save_graph from lxml import etree import sys import os source=sys.stdin sourcePath="[XML-file]" if len(sys.argv) != 2: raise RuntimeError("This converts exactly one XML file. Please provide one path to an XML file") sys.stderr.write("Reading graph type from '{}'\n".format(sys.argv[1])) source=open(sys.argv[1],"rt") sourcePath=os.path.abspath(sys.argv[1]) dest=sys.stdout destPath="[XML-file]" # LOAD XML (gt,gi)=load_graph(source, sourcePath) save_graph(gi if gi else gt, dest)
from graph.save_xml_v4 import save_graph from lxml import etree import sys import os source = sys.stdin sourcePath = "[XML-file]" dest = sys.stdout if len(sys.argv) < 2: raise RuntimeError( "This converts exactly one XML file. Please provide one path to an XML file" ) source = sys.argv[1] sys.stderr.write("Reading graph type from '{}'\n".format(source)) sourcePath = os.path.abspath(source) if len(sys.argv) > 2: dest = sys.argv[2] # LOAD XML (type, instance) = load_graph(source, sourcePath) if instance: save_graph(instance, dest) else: save_graph(type, dest)
from graph.load_xml import load_graph import sys import os if len(sys.argv) > 1: src = sys.argv[1] basePath = os.path.dirname(src) else: src = sys.stdin basePath = os.getcwd() graph = load_graph(src, basePath) print("graph '{}'".format(graph.id)) print("message type count = {}".format(len(graph.graph_type.message_types))) print("device type count = {}".format(len(graph.graph_type.device_types))) print("device instance count = {}".format(len(graph.device_instances))) print("edge instance count = {}".format(len(graph.edge_instances)))