Add documentation about Sound Manager and Audio Manager architecture
[staging/soundmanager.git] / doc / parts / seq_stopsoundstreaming.svg
diff --git a/doc/parts/seq_stopsoundstreaming.svg b/doc/parts/seq_stopsoundstreaming.svg
new file mode 100644 (file)
index 0000000..d1651ce
--- /dev/null
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="1108px" preserveAspectRatio="none" style="width:1478px;height:1108px;background:#EEEBDC;" version="1.1" viewBox="0 0 1478 1108" width="1478px" zoomAndPan="magnify"><defs><filter height="300%" id="fnoylfrcwq7w7" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><rect fill="#EEEBDC" height="1086.625" style="stroke: #DEB887; stroke-width: 1.0;" width="142" x="589.5" y="4"/><text fill="#000000" font-family="sans-serif" font-size="12" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="113" x="604" y="15.1387">CommandPlugIn</text><rect fill="#EEEBDC" height="1086.625" style="stroke: #DEB887; stroke-width: 1.0;" width="427" x="733.5" y="4"/><text fill="#000000" font-family="sans-serif" font-size="12" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="169" x="862.5" y="15.1387">Audio Manager Daemon</text><rect fill="#EEEBDC" height="1086.625" style="stroke: #DEB887; stroke-width: 1.0;" width="128" x="1187.5" y="4"/><text fill="#000000" font-family="sans-serif" font-size="12" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="99" x="1202" y="15.1387">RoutingPlugIn</text><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="166.5313" style="stroke: #404040; stroke-width: 1.0;" width="10" x="97.5" y="228.3672"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="30" style="stroke: #404040; stroke-width: 1.0;" width="10" x="97.5" y="727.8281"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="58.5313" style="stroke: #404040; stroke-width: 1.0;" width="10" x="376.5" y="184.1016"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="59.1328" style="stroke: #404040; stroke-width: 1.0;" width="10" x="376.5" y="364.8984"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="88.2656" style="stroke: #404040; stroke-width: 1.0;" width="10" x="376.5" y="669.5625"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="58.5313" style="stroke: #404040; stroke-width: 1.0;" width="10" x="655.5" y="625.2969"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="166.6641" style="stroke: #404040; stroke-width: 1.0;" width="10" x="951.5" y="114.9688"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="338.0625" style="stroke: #404040; stroke-width: 1.0;" width="10" x="951.5" y="517.2969"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="30" style="stroke: #404040; stroke-width: 1.0;" width="10" x="951.5" y="1034.625"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="53.1328" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1083.5" y="478.1641"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="83.1328" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1083.5" y="995.4922"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="166.6641" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1246.5" y="114.9688"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="107.2656" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1246.5" y="424.0313"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="43.2656" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1246.5" y="812.0938"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="137.1328" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1246.5" y="941.4922"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="100.2656" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1362.5" y="841.2266"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="28" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1367.5" y="892.3594"/><line style="stroke: #404040; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="102" x2="102" y1="83.9688" y2="1096.625"/><line style="stroke: #404040; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="381" x2="381" y1="83.9688" y2="1096.625"/><line style="stroke: #404040; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="660.5" x2="660.5" y1="83.9688" y2="1096.625"/><line style="stroke: #404040; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="814.5" x2="814.5" y1="83.9688" y2="1096.625"/><line style="stroke: #404040; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="956.5" x2="956.5" y1="83.9688" y2="1096.625"/><line style="stroke: #404040; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="1088.5" x2="1088.5" y1="83.9688" y2="1096.625"/><line style="stroke: #404040; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="1251.5" x2="1251.5" y1="83.9688" y2="1096.625"/><line style="stroke: #404040; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="1367.5" x2="1367.5" y1="83.9688" y2="1096.625"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="69" x="65" y="81.1387">Application</text><ellipse cx="102.5" cy="13" fill="#FFFACD" filter="url(#fnoylfrcwq7w7)" rx="8" ry="8" style="stroke: #000000; stroke-width: 2.0;"/><path d="M102.5,21 L102.5,48 M89.5,29 L115.5,29 M102.5,48 L89.5,63 M102.5,48 L115.5,63 " fill="#FFFACD" filter="url(#fnoylfrcwq7w7)" style="stroke: #000000; stroke-width: 2.0;"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="27.9688" style="stroke: #000000; stroke-width: 1.5;" width="109" x="325" y="51"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="95" x="332" y="69.1387">SoundManager</text><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="27.9688" style="stroke: #000000; stroke-width: 1.5;" width="130" x="593.5" y="51"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="116" x="600.5" y="69.1387">IAmCommandSend</text><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="27.9688" style="stroke: #000000; stroke-width: 1.5;" width="151" x="737.5" y="51"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="137" x="744.5" y="69.1387">IAmCommandReceiver</text><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="27.9688" style="stroke: #000000; stroke-width: 1.5;" width="104" x="902.5" y="51"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="90" x="909.5" y="69.1387">AudioManager</text><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="27.9688" style="stroke: #000000; stroke-width: 1.5;" width="132" x="1020.5" y="51"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="118" x="1027.5" y="69.1387">IAmRoutingReceive</text><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="27.9688" style="stroke: #000000; stroke-width: 1.5;" width="116" x="1191.5" y="51"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="102" x="1198.5" y="69.1387">IAmRoutingSend</text><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="86" x="1321.5" y="81.1387">Audio Domain</text><ellipse cx="1367.5" cy="13" fill="#FFFACD" filter="url(#fnoylfrcwq7w7)" rx="8" ry="8" style="stroke: #000000; stroke-width: 2.0;"/><path d="M1367.5,21 L1367.5,48 M1354.5,29 L1380.5,29 M1367.5,48 L1354.5,63 M1367.5,48 L1380.5,63 " fill="#FFFACD" filter="url(#fnoylfrcwq7w7)" style="stroke: #000000; stroke-width: 2.0;"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="166.5313" style="stroke: #404040; stroke-width: 1.0;" width="10" x="97.5" y="228.3672"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="30" style="stroke: #404040; stroke-width: 1.0;" width="10" x="97.5" y="727.8281"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="58.5313" style="stroke: #404040; stroke-width: 1.0;" width="10" x="376.5" y="184.1016"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="59.1328" style="stroke: #404040; stroke-width: 1.0;" width="10" x="376.5" y="364.8984"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="88.2656" style="stroke: #404040; stroke-width: 1.0;" width="10" x="376.5" y="669.5625"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="58.5313" style="stroke: #404040; stroke-width: 1.0;" width="10" x="655.5" y="625.2969"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="166.6641" style="stroke: #404040; stroke-width: 1.0;" width="10" x="951.5" y="114.9688"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="338.0625" style="stroke: #404040; stroke-width: 1.0;" width="10" x="951.5" y="517.2969"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="30" style="stroke: #404040; stroke-width: 1.0;" width="10" x="951.5" y="1034.625"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="53.1328" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1083.5" y="478.1641"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="83.1328" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1083.5" y="995.4922"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="166.6641" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1246.5" y="114.9688"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="107.2656" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1246.5" y="424.0313"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="43.2656" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1246.5" y="812.0938"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="137.1328" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1246.5" y="941.4922"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="100.2656" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1362.5" y="841.2266"/><rect fill="#00FF00" filter="url(#fnoylfrcwq7w7)" height="28" style="stroke: #404040; stroke-width: 1.0;" width="10" x="1367.5" y="892.3594"/><polygon fill="#000000" points="1234.5,110.9688,1244.5,114.9688,1234.5,118.9688,1238.5,114.9688" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="961.5" x2="1240.5" y1="114.9688" y2="114.9688"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="153" x="968.5" y="110.0356">asyncSetSourceState ()</text><polygon fill="#000000" points="397.5,180.1016,387.5,184.1016,397.5,188.1016,393.5,184.1016" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="391.5" x2="1245.5" y1="184.1016" y2="184.1016"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="144" x="403.5" y="164.1685">asyncSetSourceState(</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="84" x="419.5" y="179.3013">SS_PAUSED)</text><polygon fill="#000000" points="118.5,224.3672,108.5,228.3672,118.5,232.3672,114.5,228.3672" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="112.5" x2="375.5" y1="228.3672" y2="228.3672"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="189" x="124.5" y="208.4341">event [asyncSetSourceState(</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="67" x="140.5" y="223.5669">"paused")]</text><polygon fill="#000000" points="1234.5,238.6328,1244.5,242.6328,1234.5,246.6328,1238.5,242.6328" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="381.5" x2="1240.5" y1="242.6328" y2="242.6328"/><polygon fill="#000000" points="967.5,277.6328,957.5,281.6328,967.5,285.6328,963.5,281.6328" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="961.5" x2="1250.5" y1="281.6328" y2="281.6328"/><polygon fill="#FBFB77" filter="url(#fnoylfrcwq7w7)" points="8,294.6328,8,334.6328,193,334.6328,193,304.6328,183,294.6328,8,294.6328" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="183" x2="183" y1="294.6328" y2="304.6328"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="193" x2="183" y1="304.6328" y2="304.6328"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="122" x="14" y="311.6997">Stop audio playing.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="164" x="14" y="326.8325">And release audio device.</text><polygon fill="#000000" points="364.5,360.8984,374.5,364.8984,364.5,368.8984,368.5,364.8984" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="107.5" x2="370.5" y1="364.8984" y2="364.8984"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="165" x="114.5" y="359.9653">call("ackSetSourceState")</text><polygon fill="#000000" points="1234.5,420.0313,1244.5,424.0313,1234.5,428.0313,1238.5,424.0313" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="381.5" x2="1240.5" y1="424.0313" y2="424.0313"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="134" x="388.5" y="419.0981">ackSetSourceState()</text><polygon fill="#000000" points="1104.5,474.1641,1094.5,478.1641,1104.5,482.1641,1100.5,478.1641" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="1098.5" x2="1245.5" y1="478.1641" y2="478.1641"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="134" x="1110.5" y="473.231">ackSetSourceState()</text><polygon fill="#000000" points="972.5,513.2969,962.5,517.2969,972.5,521.2969,968.5,517.2969" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="966.5" x2="1082.5" y1="517.2969" y2="517.2969"/><polygon fill="#000000" points="1239.5,527.2969,1249.5,531.2969,1239.5,535.2969,1243.5,531.2969" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="1088.5" x2="1245.5" y1="531.2969" y2="531.2969"/><polygon fill="#000000" points="676.5,621.2969,666.5,625.2969,676.5,629.2969,672.5,625.2969" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="670.5" x2="950.5" y1="625.2969" y2="625.2969"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="218" x="682.5" y="605.3638">cbMainConnectionStateChanged (</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="117" x="706.5" y="620.4966">CS_SUSPENDED)]</text><polygon fill="#000000" points="397.5,665.5625,387.5,669.5625,397.5,673.5625,393.5,669.5625" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="391.5" x2="654.5" y1="669.5625" y2="669.5625"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="250" x="403.5" y="649.6294">signal("MainConnectionStateChanged (</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="122" x="419.5" y="664.7622">CS_SUSPENDED)")</text><polygon fill="#000000" points="939.5,679.8281,949.5,683.8281,939.5,687.8281,943.5,683.8281" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="660.5" x2="945.5" y1="683.8281" y2="683.8281"/><polygon fill="#000000" points="118.5,723.8281,108.5,727.8281,118.5,731.8281,114.5,727.8281" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="112.5" x2="375.5" y1="727.8281" y2="727.8281"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="250" x="124.5" y="707.895">event [mainConnectionStateChanged (</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="117" x="140.5" y="723.0278">CS_SUSPENDED)]</text><polygon fill="#000000" points="1234.5,808.0938,1244.5,812.0938,1234.5,816.0938,1238.5,812.0938" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="961.5" x2="1240.5" y1="812.0938" y2="812.0938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="149" x="968.5" y="807.1606">asyncSetSourceState()</text><polygon fill="#000000" points="1350.5,837.2266,1360.5,841.2266,1350.5,845.2266,1354.5,841.2266" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="1256.5" x2="1356.5" y1="841.2266" y2="841.2266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="64" x="1263.5" y="836.2935">SetMute()</text><polygon fill="#000000" points="967.5,851.3594,957.5,855.3594,967.5,859.3594,963.5,855.3594" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="961.5" x2="1250.5" y1="855.3594" y2="855.3594"/><line style="stroke: #000000; stroke-width: 1.0;" x1="1377.5" x2="1419.5" y1="884.4922" y2="884.4922"/><line style="stroke: #000000; stroke-width: 1.0;" x1="1419.5" x2="1419.5" y1="884.4922" y2="897.4922"/><line style="stroke: #000000; stroke-width: 1.0;" x1="1378.5" x2="1419.5" y1="897.4922" y2="897.4922"/><polygon fill="#000000" points="1388.5,893.4922,1378.5,897.4922,1388.5,901.4922,1384.5,897.4922" style="stroke: #000000; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="82" x="1384.5" y="879.4263">Mute (MUTE)</text><polygon fill="#000000" points="1267.5,937.4922,1257.5,941.4922,1267.5,945.4922,1263.5,941.4922" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="1261.5" x2="1366.5" y1="941.4922" y2="941.4922"/><polygon fill="#000000" points="1104.5,991.4922,1094.5,995.4922,1104.5,999.4922,1100.5,995.4922" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="1098.5" x2="1245.5" y1="995.4922" y2="995.4922"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="134" x="1110.5" y="990.5591">ackSetSourceState()</text><polygon fill="#000000" points="972.5,1030.625,962.5,1034.625,972.5,1038.625,968.5,1034.625" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0;" x1="966.5" x2="1082.5" y1="1034.625" y2="1034.625"/><polygon fill="#000000" points="1239.5,1074.625,1249.5,1078.625,1239.5,1082.625,1243.5,1078.625" style="stroke: #000000; stroke-width: 1.0;"/><line style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="1088.5" x2="1245.5" y1="1078.625" y2="1078.625"/><!--
+@startuml\r
+hide footbox\r
+\r
+'skinparam defaultFontSize 10\r
+skinparam backgroundColor #EEEBDC\r
+skinparam sequenceGroupHeaderFontSize 12\r
+\r
+skinparam sequence {\r
+    ArrowColor black\r
+\r
+    ActorBorderColor black\r
+\r
+    LifeLineBorderColor #404040\r
+    LifeLineBackgroundColor #404040\r
+       \r
+    ParticipantBorderColor black\r
+    ParticipantBackgroundColor #00FF00\r
+    ParticipantFontSize 12\r
+    ParticipantFontColor black\r
+\r
+    ActorBackgroundColor #FFFACD\r
+    ActorFontColor black\r
+    ActorFontSize 12\r
+\r
+\r
+    BoxBorderColor #deb887\r
+    BoxFontSize 12\r
+    TitleFontSize 20\r
+}\r
+\r
+\r
+actor Application as AP\r
+participant SoundManager as SM\r
+box "CommandPlugIn" #EEEBDC\r
+    participant IAmCommandSend as CS\r
+end box\r
+box "Audio Manager Daemon" #EEEBDC\r
+    participant IAmCommandReceiver as CR\r
+    participant AudioManager as AM\r
+    participant IAmRoutingReceive as RR\r
+end box\r
+box "RoutingPlugIn" #EEEBDC\r
+    participant IAmRoutingSend as RS\r
+end box\r
+actor "Audio Domain" as AD\r
+\r
+\r
+AM -> RS : asyncSetSourceState ()\r
+activate AM #00FF00\r
+activate RS #00ff00\r
+|||\r
+RS -> SM : asyncSetSourceState(\n    SS_PAUSED)\r
+activate SM #00ff00\r
+SM -> AP : event [asyncSetSourceState(\n    "paused")]\r
+activate AP #00ff00\r
+SM- ->RS\r
+deactivate SM\r
+|||\r
+RS - -> AM\r
+deactivate RS\r
+deactivate AM\r
+note over AP: Stop audio playing.\nAnd release audio device.\r
+AP -> SM : call("ackSetSourceState")\r
+activate SM #00ff00\r
+deactivate AP\r
+SM -> RS : ackSetSourceState()\r
+deactivate SM\r
+activate RS #00ff00\r
+|||\r
+RS -> RR : ackSetSourceState()\r
+activate RR #00ff00\r
+|||\r
+RR -> AM\r
+activate AM #00ff00\r
+RR - -> RS\r
+deactivate RR\r
+deactivate RS\r
+\r
+|||\r
+|||\r
+AM -> CS : cbMainConnectionStateChanged (\n      CS_SUSPENDED)]\r
+activate CS #00ff00\r
+\r
+CS -> SM : signal("MainConnectionStateChanged (\n    CS_SUSPENDED)")\r
+activate SM #00ff00\r
+CS - -> AM\r
+deactivate CS\r
+SM -> AP : event [mainConnectionStateChanged (\n    CS_SUSPENDED)]\r
+activate AP #00ff00\r
+deactivate SM\r
+deactivate AP\r
+|||\r
+AM -> RS : asyncSetSourceState()\r
+activate RS #00ff00\r
+RS -> AD : SetMute()\r
+activate AD #00ff00\r
+RS - -> AM \r
+deactivate RS\r
+deactivate AM\r
+\r
+AD -> AD : Mute (MUTE)\r
+activate AD #00ff00\r
+deactivate AD\r
+AD -> RS\r
+deactivate AD\r
+activate RS #00ff00\r
+|||\r
+RS -> RR : ackSetSourceState()\r
+activate RR #00ff00\r
+|||\r
+RR -> AM\r
+activate AM #00ff00\r
+deactivate AM\r
+RR - -> RS\r
+deactivate RR\r
+deactivate RS\r
+@enduml\r
+
+PlantUML version 1.2017.16beta5(Unknown compile time)
+(GPL source distribution)
+Java Runtime: Java(TM) SE Runtime Environment
+JVM: Java HotSpot(TM) 64-Bit Server VM
+Java Version: 1.7.0_25-b15
+Operating System: Linux
+Default Encoding: UTF-8
+Language: en
+Country: US
+--></g></svg>
\ No newline at end of file