| <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> |
| <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="642px" height="682px" viewBox="-0.5 -0.5 642 682" content="<mxfile modified="2019-05-01T19:07:07.556Z" host="www.draw.io" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36" etag="7MVQbu2uo8iAHLBw1ZlM" version="10.6.5" type="google"><diagram id="6a731a19-8d31-9384-78a2-239565b7b9f0" name="Page-1">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</diagram></mxfile>"><defs/><g><rect x="1" y="1" width="640" height="80" fill="#23445d" stroke="#bac8d3" stroke-width="2" pointer-events="none"/><g transform="translate(155.5,23.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="330" height="26" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 24px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">State Change Notification Flow</div></div></foreignObject><text x="165" y="25" fill="#FFFFFF" text-anchor="middle" font-size="24px" font-family="Helvetica">State Change Notification Flow</text></switch></g><rect x="1" y="81" width="640" height="100" fill-opacity="0.6" fill="#bac8d3" stroke="#ffffff" stroke-opacity="0.6" stroke-width="2" pointer-events="none"/><rect x="1" y="181" width="640" height="100" fill-opacity="0.9" fill="#bac8d3" stroke="#ffffff" stroke-opacity="0.9" stroke-width="2" pointer-events="none"/><rect x="1" y="281" width="640" height="100" fill-opacity="0.6" fill="#bac8d3" stroke="#ffffff" stroke-opacity="0.6" stroke-width="2" pointer-events="none"/><rect x="1" y="381" width="640" height="100" fill-opacity="0.9" fill="#bac8d3" stroke="#ffffff" stroke-opacity="0.9" stroke-width="2" pointer-events="none"/><rect x="1" y="481" width="640" height="100" fill-opacity="0.6" fill="#bac8d3" stroke="#ffffff" stroke-opacity="0.6" stroke-width="2" pointer-events="none"/><rect x="1" y="581" width="640" height="100" fill-opacity="0.9" fill="#bac8d3" stroke="#ffffff" stroke-opacity="0.9" stroke-width="2" pointer-events="none"/><path d="M 168.1 130 L 175.55 130 Q 183 130 183 140 L 183 226 Q 183 236 193 236 L 239 236" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 161.35 130 L 170.35 125.5 L 168.1 130 L 170.35 134.5 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><rect x="31.39" y="105.5" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(58.5,122.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="72" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">gl::Context</div></div></foreignObject><text x="36" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">gl::Context</text></switch></g><rect x="476.9" y="211" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(495.5,227.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="89" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">rx::BufferImpl</div></div></foreignObject><text x="45" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">rx::BufferImpl</text></switch></g><rect x="239.35" y="211" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(272.5,227.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="60" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">gl::Buffer</div></div></foreignObject><text x="30" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">gl::Buffer</text></switch></g><path d="M 302.9 461.87 L 302.9 505.5" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 302.9 456.62 L 306.4 463.62 L 302.9 461.87 L 299.4 463.62 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="239.4" y="405.5" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(251.5,422.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="101" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">gl::Framebuffer</div></div></foreignObject><text x="51" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">gl::Framebuffer</text></switch></g><rect x="476.9" y="505.5" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(490.5,522.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="98" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">rx::TextureImpl</div></div></foreignObject><text x="49" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">rx::TextureImpl</text></switch></g><rect x="239.35" y="605.5" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(264.5,622.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="76" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">gl::Sampler</div></div></foreignObject><text x="38" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">gl::Sampler</text></switch></g><rect x="239.35" y="505.5" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(267.5,522.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="69" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">gl::Texture</div></div></foreignObject><text x="35" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">gl::Texture</text></switch></g><rect x="476.76" y="305.5" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(499.5,322.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="80" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">egl::Surface</div></div></foreignObject><text x="40" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">egl::Surface</text></switch></g><path d="M 168.5 130.5 L 175.75 130.5 Q 183 130.5 183 140.5 L 183 520.5 Q 183 530.5 193 530.5 L 239.35 530.5" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 161.75 130.5 L 170.75 126 L 168.5 130.5 L 170.75 135 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 168.5 130.5 L 175.75 130.5 Q 183 130.5 183 140.5 L 183 620.5 Q 183 630.5 193 630.5 L 239.35 630.5" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 161.75 130.5 L 170.75 126 L 168.5 130.5 L 170.75 135 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 376.46 236 L 412 236 Q 422 236 432 236 L 476.9 236" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 369.71 236 L 378.71 231.5 L 376.46 236 L 378.71 240.5 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 303 211 L 303 193.5 Q 303 183.5 303 174.8 L 303 166.1" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 303 159.35 L 307.5 168.35 L 303 166.1 L 298.5 168.35 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 303 505.5 L 303 490.5 Q 303 480.5 303 473.05 L 303 465.6" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 303 458.85 L 307.5 467.85 L 303 465.6 L 298.5 467.85 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 376.46 530.5 L 412 530.5 Q 422 530.5 432 530.5 L 476.9 530.5" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 369.71 530.5 L 378.71 526 L 376.46 530.5 L 378.71 535 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 376.51 430.5 L 412 430.5 Q 422 430.5 422 420.5 L 422 340.5 Q 422 330.5 432 330.5 L 476.76 330.5" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 369.76 430.5 L 378.76 426 L 376.51 430.5 L 378.76 435 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 168.1 131 L 175.55 131 Q 183 131 183 141 L 183 421 Q 183 431 193 431 L 241 431" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 161.35 131 L 170.35 126.5 L 168.1 131 L 170.35 135.5 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 239.35 130.5 L 165.72 130.5" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 160.47 130.5 L 167.47 127 L 165.72 130.5 L 167.47 134 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="239.35" y="105.5" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(253.5,122.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="98" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">gl::VertexArray<br style="font-size: 15px" /></div></div></foreignObject><text x="49" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="32.35" y="105.5" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(46.5,122.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="98" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">gl::VertexArray<br style="font-size: 15px" /></div></div></foreignObject><text x="49" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="239.35" y="305.5" width="127" height="50" rx="7.5" ry="7.5" fill="#23445d" stroke="none" pointer-events="none"/><g transform="translate(248.5,322.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="107" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">gl::Renderbuffer</div></div></foreignObject><text x="54" y="16" fill="#FFFFFF" text-anchor="middle" font-size="15px" font-family="Helvetica">gl::Renderbuffer</text></switch></g><path d="M 301 395.4 L 301 387.95 Q 301 380.5 301 370.5 L 301 355.5" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 301 402.15 L 296.5 393.15 L 301 395.4 L 305.5 393.15 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 168.1 130 L 189 130 Q 199 130 209 130 L 240 130" fill="none" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 161.35 130 L 170.35 125.5 L 168.1 130 L 170.35 134.5 Z" fill="#0c343d" stroke="#0c343d" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/></g></svg> |