topology-figure-3.dot 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. digraph T {
  2. /* Make sure our payloads are always drawn below the driver node */
  3. subgraph cluster_driver {
  4. fillcolor = grey;
  5. style = filled;
  6. edge [dir=none];
  7. driver -> payload1;
  8. driver -> payload2 [penwidth=3];
  9. edge [dir=""];
  10. }
  11. /* Driver malloc references */
  12. edge [style=dashed];
  13. driver -> port1;
  14. driver -> port2;
  15. driver -> port3:e;
  16. driver -> port4 [color=grey];
  17. payload1:s -> port1:e;
  18. payload2:s -> port3:e [penwidth=3];
  19. edge [style=""];
  20. subgraph cluster_topology {
  21. label="Topology Manager";
  22. labelloc=bottom;
  23. /* Topology references */
  24. mstb1 -> {port1, port2};
  25. port1 -> mstb2;
  26. edge [color=grey];
  27. port2 -> mstb3 -> {port3, port4};
  28. port3 -> mstb4;
  29. edge [color=""];
  30. /* Malloc references */
  31. edge [style=dashed;dir=back];
  32. mstb1 -> {port1, port2};
  33. port1 -> mstb2;
  34. port2 -> mstb3 [penwidth=3];
  35. mstb3 -> port3 [penwidth=3];
  36. edge [color=grey];
  37. mstb3 -> port4;
  38. port3 -> mstb4;
  39. }
  40. mstb1 [label="MSTB #1";style=filled;fillcolor=palegreen];
  41. mstb2 [label="MSTB #2";style=filled;fillcolor=palegreen];
  42. mstb3 [label="MSTB #3";style=filled;fillcolor=palegreen;penwidth=3];
  43. mstb4 [label="MSTB #4";style=filled;fillcolor=grey];
  44. port1 [label="Port #1"];
  45. port2 [label="Port #2";penwidth=5];
  46. port3 [label="Port #3";penwidth=3];
  47. port4 [label="Port #4";style=filled;fillcolor=grey];
  48. driver [label="DRM driver";style=filled;shape=box;fillcolor=lightblue];
  49. payload1 [label="Payload #1";style=filled;shape=box;fillcolor=lightblue];
  50. payload2 [label="Payload #2";style=filled;shape=box;fillcolor=lightblue;penwidth=3];
  51. }