0001 digraph T {
0002 /* Make sure our payloads are always drawn below the driver node */
0003 subgraph cluster_driver {
0004 fillcolor = grey;
0005 style = filled;
0006 driver -> {payload1, payload2} [dir=none];
0007 }
0008
0009 /* Driver malloc references */
0010 edge [style=dashed];
0011 driver -> port1;
0012 driver -> port2;
0013 driver -> port3:e;
0014 driver -> port4 [color=red];
0015
0016 payload1:s -> port1:e;
0017 payload2:s -> port3:e;
0018 edge [style=""];
0019
0020 subgraph cluster_topology {
0021 label="Topology Manager";
0022 labelloc=bottom;
0023
0024 /* Topology references */
0025 mstb1 -> {port1, port2};
0026 port1 -> mstb2;
0027 edge [color=red];
0028 port2 -> mstb3 -> {port3, port4};
0029 port3 -> mstb4;
0030 edge [color=""];
0031
0032 /* Malloc references */
0033 edge [style=dashed;dir=back];
0034 mstb1 -> {port1, port2};
0035 port1 -> mstb2;
0036 port2 -> mstb3 -> port3;
0037 edge [color=red];
0038 mstb3 -> port4;
0039 port3 -> mstb4;
0040 }
0041
0042 mstb1 [label="MSTB #1";style=filled;fillcolor=palegreen];
0043 mstb2 [label="MSTB #2";style=filled;fillcolor=palegreen];
0044 mstb3 [label="MSTB #3";style=filled;fillcolor=palegreen];
0045 mstb4 [label="MSTB #4";style=filled;fillcolor=grey];
0046
0047 port1 [label="Port #1"];
0048 port2 [label="Port #2"];
0049 port3 [label="Port #3"];
0050 port4 [label="Port #4";style=filled;fillcolor=grey];
0051
0052 driver [label="DRM driver";style=filled;shape=box;fillcolor=lightblue];
0053
0054 payload1 [label="Payload #1";style=filled;shape=box;fillcolor=lightblue];
0055 payload2 [label="Payload #2";style=filled;shape=box;fillcolor=lightblue];
0056 }