summaryrefslogtreecommitdiffstats
path: root/images
diff options
context:
space:
mode:
Diffstat (limited to 'images')
-rw-r--r--images/ssr-publisher-subscriber.svg645
-rw-r--r--images/ssr-publisher-with-all-subscribers.pdfbin0 -> 9195 bytes
2 files changed, 645 insertions, 0 deletions
diff --git a/images/ssr-publisher-subscriber.svg b/images/ssr-publisher-subscriber.svg
new file mode 100644
index 0000000..29b11c8
--- /dev/null
+++ b/images/ssr-publisher-subscriber.svg
@@ -0,0 +1,645 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="210mm"
+ height="297mm"
+ viewBox="0 0 210 297"
+ version="1.1"
+ id="svg8"
+ enable-background="new"
+ inkscape:version="0.92.1 r"
+ sodipodi:docname="ssr-publisher-subscriber.svg">
+ <defs
+ id="defs2" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="321.45465"
+ inkscape:cy="762.1692"
+ inkscape:document-units="mm"
+ inkscape:current-layer="layer7"
+ showgrid="false"
+ inkscape:snap-grids="true"
+ inkscape:pagecheckerboard="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:window-width="1364"
+ inkscape:window-height="746"
+ inkscape:window-x="1"
+ inkscape:window-y="21"
+ inkscape:window-maximized="1"
+ inkscape:snap-to-guides="true"
+ inkscape:snap-others="false"
+ inkscape:object-nodes="false">
+ <sodipodi:guide
+ position="106.3625,283.89792"
+ orientation="0,1"
+ id="guide5623"
+ inkscape:locked="false" />
+ <sodipodi:guide
+ position="92.000851,253.97288"
+ orientation="1,0"
+ id="guide5633"
+ inkscape:locked="false" />
+ <sodipodi:guide
+ position="80.962498,231.51042"
+ orientation="1,0"
+ id="guide4883"
+ inkscape:locked="false" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata5">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:groupmode="layer"
+ id="layer6"
+ inkscape:label="Connections"
+ style="display:inline">
+ <g
+ inkscape:groupmode="layer"
+ id="layer7"
+ inkscape:label="Controller in">
+ <g
+ style="display:inline"
+ id="g4909">
+ <path
+ sodipodi:nodetypes="cc"
+ inkscape:connector-curvature="0"
+ id="path4885"
+ d="M 80.962496,55.964584 80.93911,101.82967"
+ style="fill:none;fill-rule:evenodd;stroke:#008000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4887"
+ d="M 69.222807,56.380583 H 80.962496 107.3889"
+ style="fill:none;fill-rule:evenodd;stroke:#008000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4889"
+ d="M 80.962496,101.30525 H 111.13067"
+ style="fill:none;fill-rule:evenodd;stroke:#008000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ </g>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer8"
+ inkscape:label="Publisher to subscriber">
+ <g
+ id="g4898">
+ <path
+ sodipodi:nodetypes="ccc"
+ inkscape:connector-curvature="0"
+ id="path5639"
+ d="M 92.012685,30.263844 91.8962,186.38162 l 10.99624,0.0468"
+ style="fill:none;fill-rule:evenodd;stroke:#800000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cc"
+ inkscape:connector-curvature="0"
+ id="path5641"
+ d="M 91.720216,134.60499 H 129.83292"
+ style="fill:none;fill-rule:evenodd;stroke:#800000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4846"
+ d="m 84.376989,30.398646 h 7.62386"
+ style="fill:none;fill-rule:evenodd;stroke:#800000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4848"
+ d="M 102.89877,44.243206 H 92.000849"
+ style="fill:none;fill-rule:evenodd;stroke:#800000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4850"
+ d="M 92.000849,89.0375 H 115.09375"
+ style="fill:none;fill-rule:evenodd;stroke:#800000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ </g>
+ </g>
+ </g>
+ <g
+ inkscape:label="Controller"
+ inkscape:groupmode="layer"
+ id="layer1"
+ style="display:inline">
+ <g
+ id="g5028"
+ transform="translate(-26.312483,-33.848403)">
+ <rect
+ y="52.500252"
+ x="44.953152"
+ height="58.294647"
+ width="53.884693"
+ id="rect4584"
+ style="fill:#6c6c6c;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.32766485;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <g
+ transform="translate(23.786988,-15.635267)"
+ id="g4601">
+ <rect
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.73975658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect4586"
+ width="31.931683"
+ height="8.9465027"
+ x="32.61039"
+ y="63.009041" />
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot4588"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.53453906,-0.66817382)"><flowRegion
+ id="flowRegion4590"><rect
+ id="rect4592"
+ width="120.20814"
+ height="45.456852"
+ x="130.81476"
+ y="251.76819" /></flowRegion><flowPara
+ id="flowPara4594"
+ style="font-size:21.33333397px">Controller</flowPara></flowRoot> </g>
+ <rect
+ y="60.199192"
+ x="79.04847"
+ height="8.9465027"
+ width="31.931683"
+ id="rect4586-4"
+ style="fill:#83a1ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.73975658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,46.961881,-3.4130583)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9"><rect
+ y="251.76819"
+ x="130.81476"
+ height="45.456852"
+ width="120.20814"
+ id="rect4592-5" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7">Publisher</flowPara></flowRoot> <rect
+ y="60.199192"
+ x="33.542324"
+ height="8.9465027"
+ width="37.150463"
+ id="rect4586-4-1"
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.7979213;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,4.3109002,-3.6856992)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1-2"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9-2"><rect
+ y="251.76819"
+ x="130.81476"
+ height="45.456852"
+ width="120.20814"
+ id="rect4592-5-1" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7-6">Renderer</flowPara></flowRoot> <rect
+ y="92.4683"
+ x="33.542324"
+ height="8.9465027"
+ width="37.150463"
+ id="rect4586-4-1-0"
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.7979213;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,0.60673413,28.58341)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1-2-2"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9-2-2"><rect
+ y="251.76819"
+ x="130.81476"
+ height="37.375629"
+ width="148.4924"
+ id="rect4592-5-1-9" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7-6-7">OscHandler</flowPara></flowRoot> <rect
+ y="70.832718"
+ x="33.542324"
+ height="8.9465027"
+ width="37.150463"
+ id="rect4586-4-1-0-3"
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.7979213;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,7.4859012,6.94783)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1-2-2-5"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9-2-2-6"><rect
+ y="251.76819"
+ x="130.81476"
+ height="45.456852"
+ width="120.20814"
+ id="rect4592-5-1-9-1" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7-6-7-4">Scene</flowPara></flowRoot> <rect
+ y="81.801514"
+ x="33.542324"
+ height="8.9465027"
+ width="37.150463"
+ id="rect4586-4-1-0-3-2"
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.7979213;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,7.485902,17.916624)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1-2-2-5-7"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9-2-2-6-7"><rect
+ y="251.76819"
+ x="130.81476"
+ height="45.456852"
+ width="120.20814"
+ id="rect4592-5-1-9-1-9" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7-6-7-4-8">Server</flowPara></flowRoot> </g>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer3"
+ inkscape:label="Scene"
+ style="display:inline">
+ <g
+ id="g5556"
+ transform="translate(0.29394234,37.38873)">
+ <rect
+ y="89.018288"
+ x="127.3783"
+ height="23.584503"
+ width="54.364132"
+ id="rect4584-0"
+ style="fill:#6c6c6c;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.84822488;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <g
+ transform="translate(106.45186,21.122494)"
+ id="g4601-7">
+ <rect
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.73975658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect4586-6"
+ width="31.931683"
+ height="8.9465027"
+ x="32.61039"
+ y="63.009041" />
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot4588-0"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="matrix(0.26458333,0,0,0.26458333,4.7571278,-0.66817382)"><flowRegion
+ id="flowRegion4590-1"><rect
+ id="rect4592-0"
+ width="120.20814"
+ height="45.456852"
+ x="130.81476"
+ y="251.76819" /></flowRegion><flowPara
+ id="flowPara4594-2"
+ style="font-size:21.33333397px">Scene</flowPara></flowRoot> </g>
+ <g
+ transform="translate(10.31875,65.352083)"
+ id="g5323">
+ <rect
+ style="fill:#83a1ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.76571071;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect4586-4-5"
+ width="34.311153"
+ height="8.9205484"
+ x="151.40756"
+ y="31.617847" />
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot4588-1-1"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="matrix(0.26458333,0,0,0.26458333,118.77883,-32.00738)"><flowRegion
+ id="flowRegion4590-9-9"><rect
+ id="rect4592-5-7"
+ width="120.20814"
+ height="45.456852"
+ x="130.81476"
+ y="251.76819" /></flowRegion><flowPara
+ id="flowPara4594-7-1"
+ style="font-size:21.33333397px">Subscriber</flowPara></flowRoot> </g>
+ </g>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer4"
+ inkscape:label="Server"
+ style="display:inline">
+ <rect
+ style="fill:#6c6c6c;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.17773414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect4584-4"
+ width="54.034626"
+ height="45.744576"
+ x="128.41269"
+ y="18.494596" />
+ <g
+ id="g4601-5"
+ transform="translate(107.32148,-49.565957)">
+ <rect
+ y="63.009041"
+ x="32.61039"
+ height="8.9465027"
+ width="31.931683"
+ id="rect4586-46"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.73975658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,4.2279611,-0.66817382)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-6"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-3"><rect
+ y="251.76819"
+ x="130.81476"
+ height="45.456852"
+ width="120.20814"
+ id="rect4592-9" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-9">Server</flowPara></flowRoot> </g>
+ <g
+ id="g5360"
+ transform="translate(7.8052084,-103.71667)">
+ <rect
+ y="143.85162"
+ x="94.297607"
+ height="8.732007"
+ width="61.277634"
+ id="rect4586-4-1-1"
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.01241672;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,63.371437,80.388648)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1-2-3"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9-2-4"><rect
+ y="251.76819"
+ x="130.81476"
+ height="23.094753"
+ width="211.67206"
+ id="rect4592-5-1-5" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7-6-85">NetworkSubscriber</flowPara></flowRoot> </g>
+ <rect
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.7979213;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect4586-4-1-0-3-53"
+ width="37.150463"
+ height="8.9465027"
+ x="113.63723"
+ y="27.112463" />
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot4588-1-2-2-5-8"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="matrix(0.26458333,0,0,0.26458333,81.759982,-36.772443)"><flowRegion
+ id="flowRegion4590-9-2-2-6-6"><rect
+ id="rect4592-5-1-9-1-0"
+ width="179.20813"
+ height="51.456848"
+ x="130.81476"
+ y="251.76819" /></flowRegion><flowPara
+ id="flowPara4594-7-6-7-4-3"
+ style="font-size:21.33333397px">Connection</flowPara></flowRoot> <g
+ transform="translate(10.988928,-4.786994)"
+ id="g5323-0">
+ <rect
+ y="31.617847"
+ x="151.40756"
+ height="8.9205484"
+ width="34.311153"
+ id="rect4586-4-5-5"
+ style="fill:#83a1ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.76571071;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,118.77883,-32.00738)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1-1-1"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9-9-1"><rect
+ y="251.76819"
+ x="130.81476"
+ height="45.456852"
+ width="120.20814"
+ id="rect4592-5-7-0" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7-1-3">Subscriber</flowPara></flowRoot> </g>
+ <g
+ transform="translate(4.1010418)"
+ id="g4844">
+ <g
+ id="g4836">
+ <rect
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.9617461;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect4586-4-1-1-6"
+ width="54.978306"
+ height="8.7826777"
+ x="101.23063"
+ y="52.102409" />
+ </g>
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,70.329804,-11.335229)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1-2-3-7"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9-2-4-5"><rect
+ y="251.76819"
+ x="130.81476"
+ height="23.094753"
+ width="211.67206"
+ id="rect4592-5-1-5-3" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7-6-85-5">CommandParser</flowPara></flowRoot> </g>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer5"
+ inkscape:label="OscHandler"
+ style="display:inline">
+ <g
+ id="g5654"
+ transform="translate(93.6625,-99.747863)">
+ <rect
+ y="176.21646"
+ x="34.845776"
+ height="38.172539"
+ width="54.135506"
+ id="rect4584-4-0"
+ style="fill:#6c6c6c;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.07685697;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <rect
+ y="171.23064"
+ x="44.78915"
+ height="8.915988"
+ width="36.453098"
+ id="rect4586-46-4"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.78904766;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,11.682974,107.53817)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-6-5"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-3-4"><rect
+ y="251.76819"
+ x="130.81476"
+ height="30.456848"
+ width="171.20813"
+ id="rect4592-9-2" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-9-4">OscHandler</flowPara></flowRoot> <g
+ transform="translate(6.879167)"
+ id="g5462">
+ <rect
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.85734248;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect4586-4-1-1-9"
+ width="43.176456"
+ height="8.8870811"
+ x="8.5088081"
+ y="197.82971" />
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot4588-1-2-3-9"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="matrix(0.26458333,0,0,0.26458333,-22.339825,134.44426)"><flowRegion
+ id="flowRegion4590-9-2-4-4"><rect
+ id="rect4592-5-1-5-9"
+ width="211.67206"
+ height="23.094753"
+ x="130.81476"
+ y="251.76819" /></flowRegion><flowPara
+ id="flowPara4594-7-6-85-8"
+ style="font-size:21.33333397px">OscReceiver</flowPara></flowRoot> </g>
+ <rect
+ y="184.88475"
+ x="20.12077"
+ height="8.9465027"
+ width="37.150463"
+ id="rect4586-4-1-0-3-53-1"
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.79792136;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,-11.756489,120.99985)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1-2-2-5-8-6"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9-2-2-6-6-3"><rect
+ y="251.76819"
+ x="130.81476"
+ height="51.456848"
+ width="179.20813"
+ id="rect4592-5-1-9-1-0-9" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7-6-7-4-3-3">OscSender</flowPara></flowRoot> <g
+ id="g5323-0-3"
+ transform="translate(-82.527541,152.9853)">
+ <rect
+ style="fill:#83a1ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.76571071;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect4586-4-5-5-4"
+ width="34.311153"
+ height="8.9205484"
+ x="151.40756"
+ y="31.617847" />
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot4588-1-1-1-6"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="matrix(0.26458333,0,0,0.26458333,118.77883,-32.00738)"><flowRegion
+ id="flowRegion4590-9-9-1-1"><rect
+ id="rect4592-5-7-0-5"
+ width="120.20814"
+ height="45.456852"
+ x="130.81476"
+ y="251.76819" /></flowRegion><flowPara
+ id="flowPara4594-7-1-3-6"
+ style="font-size:21.33333397px">Subscriber</flowPara></flowRoot> </g>
+ </g>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer2"
+ inkscape:label="Renderer"
+ style="display:inline">
+ <g
+ id="g4798"
+ transform="translate(1.0583333,7.4083335)">
+ <rect
+ y="153.71396"
+ x="126.90787"
+ height="36.346279"
+ width="54.161327"
+ id="rect4584-4-6"
+ style="fill:#6c6c6c;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.05103219;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <rect
+ y="148.7258"
+ x="138.4904"
+ height="8.9465027"
+ width="31.931683"
+ id="rect4586-46-5"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.73975658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,106.93298,85.048579)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-6-3"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-3-5"><rect
+ y="251.76819"
+ x="130.81476"
+ height="45.456852"
+ width="120.20814"
+ id="rect4592-9-6" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-9-2">Renderer</flowPara></flowRoot> <rect
+ y="175.41766"
+ x="100.66135"
+ height="8.732007"
+ width="61.277634"
+ id="rect4586-4-1-1-1"
+ style="fill:#ffaaa0;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.01241672;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <flowRoot
+ transform="matrix(0.26458333,0,0,0.26458333,71.322676,111.95469)"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ id="flowRoot4588-1-2-3-2"
+ xml:space="preserve"><flowRegion
+ id="flowRegion4590-9-2-4-7"><rect
+ y="251.76819"
+ x="130.81476"
+ height="23.094753"
+ width="211.67206"
+ id="rect4592-5-1-5-0" /></flowRegion><flowPara
+ style="font-size:21.33333397px"
+ id="flowPara4594-7-6-85-9">RenderSubscriber</flowPara></flowRoot> <g
+ id="g5323-0-1"
+ transform="translate(9.5474583,130.49572)">
+ <rect
+ style="fill:#83a1ff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.76571071;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect4586-4-5-5-8"
+ width="34.311153"
+ height="8.9205484"
+ x="151.40756"
+ y="31.617847" />
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot4588-1-1-1-7"
+ style="font-style:normal;font-weight:normal;font-size:10.66666698px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="matrix(0.26458333,0,0,0.26458333,118.77883,-32.00738)"><flowRegion
+ id="flowRegion4590-9-9-1-9"><rect
+ id="rect4592-5-7-0-2"
+ width="120.20814"
+ height="45.456852"
+ x="130.81476"
+ y="251.76819" /></flowRegion><flowPara
+ id="flowPara4594-7-1-3-0"
+ style="font-size:21.33333397px">Subscriber</flowPara></flowRoot> </g>
+ </g>
+ </g>
+</svg>
diff --git a/images/ssr-publisher-with-all-subscribers.pdf b/images/ssr-publisher-with-all-subscribers.pdf
new file mode 100644
index 0000000..4eb6329
--- /dev/null
+++ b/images/ssr-publisher-with-all-subscribers.pdf
Binary files differ