1/*#
2 *# Copyright 2020, Data61
3 *# Commonwealth Scientific and Industrial Research Organisation (CSIRO)
4 *# ABN 41 687 119 230.
5 *#
6 *# This software may be distributed and modified according to the terms of
7 *# the BSD 2-Clause license. Note that NO WARRANTY is provided.
8 *# See "LICENSE_BSD2.txt" for details.
9 *#
10 *# @TAG(DATA61_BSD)
11 #*/
12
13digraph {
14/*- for i in composition.instances -*/
15    "/*? i.name ?*/" [label="/*? i.name ?*/::/*? i.type.name ?*/", shape=box,style=rounded];
16/*- endfor -*/
17
18/*- for c in composition.connections -*/
19    /*- if c.type.from_type == 'Procedure' -*/
20        "/*? c.name ?*/" [shape=circle];
21        /*- for f in c.from_ends -*/
22            "/*? f.instance.name ?*/" -> "/*? c.name ?*/";
23        /*- endfor -*/
24        /*- for t in c.to_ends -*/
25            "/*? c.name ?*/" -> "/*? t.instance.name ?*/";
26        /*- endfor -*/
27    /*- elif c.type.from_type == 'Event' -*/
28        "/*? c.name ?*/" [shape=diamond];
29        /*- for f in c.from_ends -*/
30            "/*? f.instance.name ?*/" -> "/*? c.name ?*/";
31        /*- endfor -*/
32        /*- for t in c.to_ends -*/
33            "/*? c.name ?*/" -> "/*? t.instance.name ?*/";
34        /*- endfor -*/
35    /*- elif c.type.from_type == 'Dataport' -*/
36        /*- for f in c.from_ends -*/
37            /*- for t in c.to_ends -*/
38                "/*? f.instance.name ?*/" -> "/*? t.instance.name ?*/" [label="/*? c.name ?*/",dir=both,arrowhead=obox,arrowtail=obox];
39            /*- endfor -*/
40        /*- endfor -*/
41    /*- else -*/
42        /*- for f in c.from_ends -*/
43            /*- for t in c.to_ends -*/
44                "/*? f.instance.name ?*/" -> "/*? t.instance.name ?*/" [label="/*? c.name ?*/"];
45            /*- endfor -*/
46        /*- endfor -*/
47    /*- endif -*/
48/*- endfor -*/
49}
50