monado/doc/images/in-process.drawio.svg
Ryan Pavlik ca5c1568c6 doc: Update prose and diagrams for fd->native renames.
Also now leaving just the SVG with drawio data embedded,
renamed so e.g. the extension for VSCode can hook it.
2020-07-16 10:10:16 -05:00

224 lines
17 KiB
XML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="642px" height="744px" viewBox="-0.5 -0.5 642 744" content="&lt;mxfile host=&quot;10460dd4-3a9b-49be-9dda-67c5da313243&quot; modified=&quot;2020-07-16T15:05:24.044Z&quot; agent=&quot;5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Code-Insiders/1.48.0-insider Chrome/80.0.3987.165 Electron/8.3.3 Safari/537.36&quot; etag=&quot;-56zt3ZJ8HD56Lm9mq8x&quot; version=&quot;13.1.3&quot;&gt;&lt;diagram id=&quot;i7RjRSwkiHJf6eIeykeo&quot; name=&quot;Page-1&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
<defs>
<clipPath id="mx-clip-10-641-422-26-0">
<rect x="10" y="641" width="422" height="26"/>
</clipPath>
<clipPath id="mx-clip-10-667-422-26-0">
<rect x="10" y="667" width="422" height="26"/>
</clipPath>
<clipPath id="mx-clip-10-693-422-26-0">
<rect x="10" y="693" width="422" height="26"/>
</clipPath>
<clipPath id="mx-clip-10-719-422-26-0">
<rect x="10" y="719" width="422" height="26"/>
</clipPath>
</defs>
<g>
<path d="M 221 380 L 221 463.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 221 468.88 L 217.5 461.88 L 221 463.63 L 224.5 461.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 425px; margin-left: 221px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; background-color: #ffffff; white-space: nowrap; ">
creates
</div>
</div>
</div>
</foreignObject>
<text x="221" y="428" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
creates
</text>
</switch>
</g>
<ellipse cx="221" cy="335" rx="110" ry="45" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 335px; margin-left: 112px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
<font face="Courier New">
xrt_instance_create
<br/>
</font>
(full implementation in targets/common/target_instance.c)
</div>
</div>
</div>
</foreignObject>
<text x="221" y="339" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
xrt_instance_create...
</text>
</switch>
</g>
<rect x="176" y="0" width="100" height="40" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 20px; margin-left: 226px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 24px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; font-weight: bold; white-space: nowrap; ">
With XRT_FEATURE_SERVICE disabled
</div>
</div>
</div>
</foreignObject>
<text x="226" y="27" fill="#000000" font-family="Helvetica" font-size="24px" text-anchor="middle" font-weight="bold">
With XRT...
</text>
</switch>
</g>
<rect x="61" y="50" width="320" height="110" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 312px; height: 1px; padding-top: 40px; margin-left: 66px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; max-height: 120px; overflow: hidden; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
<h1>
in libopenxr_monado.so
</h1>
This library is loaded by the OpenXR loader and provides the entry points for that API. 
<span>
The entire runtime exists in this library, within the process space of the application. Built in xrt/targets/openxr
</span>
</div>
</div>
</div>
</foreignObject>
<text x="66" y="52" fill="#000000" font-family="Helvetica" font-size="12px">
in libopenxr_monado.soThis library is loaded by the...
</text>
</switch>
</g>
<ellipse cx="221" cy="200" rx="110" ry="40" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 200px; margin-left: 112px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
<font face="Courier New">
xrCreateInstance
</font>
<br/>
(in state_trackers/oxr/oxr_instance.c)
</div>
</div>
</div>
</foreignObject>
<text x="221" y="204" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
xrCreateInstance...
</text>
</switch>
</g>
<path d="M 221 240 L 221 283.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 221 288.88 L 217.5 281.88 L 221 283.63 L 224.5 281.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 265px; margin-left: 221px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; background-color: #ffffff; white-space: nowrap; ">
calls
</div>
</div>
</div>
</foreignObject>
<text x="221" y="268" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
calls
</text>
</switch>
</g>
<rect x="81" y="470" width="280" height="80" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 278px; height: 1px; padding-top: 510px; margin-left: 82px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
<div>
<font face="Courier New">
t_instance
</font>
</div>
<div>
which implements
<font face="Courier New">
xrt_instance
</font>
with functions that access hardware, using a prober created with all target lists
</div>
</div>
</div>
</div>
</foreignObject>
<text x="221" y="514" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
t_instance...
</text>
</switch>
</g>
<path d="M 442.37 649 L 521 649" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/>
<path d="M 437.12 649 L 444.12 646.67 L 442.37 649 L 444.12 651.33 Z" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 6 636 L 6 610 L 436 610 L 436 636" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 6 636 L 6 740 L 436 740 L 436 636" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/>
<path d="M 6 636 L 436 636" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/>
<g fill="#000000" font-family="Helvetica" text-anchor="middle" font-size="12px">
<text x="220.5" y="627.5">
t_instance
</text>
</g>
<g fill="#000000" font-family="Helvetica" clip-path="url(#mx-clip-10-641-422-26-0)" font-size="12px">
<text x="11.5" y="653.5">
select = t_instance_select
</text>
</g>
<g fill="#000000" font-family="Helvetica" clip-path="url(#mx-clip-10-667-422-26-0)" font-size="12px">
<text x="11.5" y="679.5">
create_native_compositor = t_instance_create_native_compositor
</text>
</g>
<g fill="#000000" font-family="Helvetica" clip-path="url(#mx-clip-10-693-422-26-0)" font-size="12px">
<text x="11.5" y="705.5">
get_prober = t_instance_get_prober
</text>
</g>
<g fill="#000000" font-family="Helvetica" clip-path="url(#mx-clip-10-719-422-26-0)" font-size="12px">
<text x="11.5" y="731.5">
destroy = t_instance_destroy
</text>
</g>
<rect x="521" y="624" width="120" height="50" fill="#ffffff" stroke="#000000" pointer-events="none"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 649px; margin-left: 581px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: nowrap; ">
«interface»
<br/>
<b>
xrt_instance
</b>
</div>
</div>
</div>
</foreignObject>
<text x="581" y="653" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
«interface»...
</text>
</switch>
</g>
</g>
<switch>
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
<a transform="translate(0,-5)" xlink:href="https://desk.draw.io/support/solutions/articles/16000042487" target="_blank">
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
Viewer does not support full SVG 1.1
</text>
</a>
</switch>
</svg>