monado/doc/images/in-process.drawio.svg

224 lines
17 KiB
XML
Raw Normal View History

<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>