mirror of
https://github.com/lbgos/rift-s-linux.git
synced 2026-10-24 03:01:16 +02:00
doc: Add documentation about target structure/architecture
This commit is contained in:
1 parent
16d3020ae8
commit
e1e9503cd1
6 files changed
+82
No files matched your search
@@ -0,0 +1 @@
|
||||
<mxfile host="Electron" modified="2020-05-20T18:53:11.229Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/12.4.2 Chrome/78.0.3904.130 Electron/7.1.4 Safari/537.36" etag="fGAGY7edic5DwCvLpX5O" version="12.4.2" type="device" pages="1"><diagram id="i7RjRSwkiHJf6eIeykeo" name="Page-1">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</diagram></mxfile>
|
||||
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!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="776px" height="744px" viewBox="-0.5 -0.5 776 744" content="<mxfile host="Electron" modified="2020-05-26T16:51:32.335Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/12.4.2 Chrome/78.0.3904.130 Electron/7.1.4 Safari/537.36" etag="9Ci-sfcZoMfu0ecC0X-b" version="12.4.2" type="device" pages="1"><diagram id="i7RjRSwkiHJf6eIeykeo" name="Page-1">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</diagram></mxfile>" style="background-color: rgb(255, 255, 255);"><defs><clipPath id="mx-clip-144-641-422-26-0"><rect x="144" y="641" width="422" height="26"/></clipPath><clipPath id="mx-clip-144-667-422-26-0"><rect x="144" y="667" width="422" height="26"/></clipPath><clipPath id="mx-clip-144-693-422-26-0"><rect x="144" y="693" width="422" height="26"/></clipPath><clipPath id="mx-clip-144-719-422-26-0"><rect x="144" y="719" width="422" height="26"/></clipPath></defs><g><path d="M 355 380 L 355 463.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 355 468.88 L 351.5 461.88 L 355 463.63 L 358.5 461.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(324.5,419.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="61" height="11" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); 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;background-color:#ffffff;">then creates</div></div></foreignObject><text x="31" y="11" fill="#000000" text-anchor="middle" font-size="11px" font-family="Helvetica">then creates</text></switch></g><path d="M 277 367 L 277 400 L 90 400 L 90 413.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 90 418.88 L 86.5 411.88 L 90 413.63 L 93.5 411.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(156.5,391.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="24" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); lLine truncated
|
||||
|
After Width: | Height: | Size: 14 KiB |
@@ -0,0 +1 @@
|
||||
<mxfile host="Electron" modified="2020-05-20T18:52:18.900Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/12.4.2 Chrome/78.0.3904.130 Electron/7.1.4 Safari/537.36" etag="vozdiOYTyxx8yI9X8aCE" version="12.4.2" type="device" pages="1"><diagram id="i7RjRSwkiHJf6eIeykeo" name="Page-1">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</diagram></mxfile>
|
||||
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!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="1031px" height="814px" viewBox="-0.5 -0.5 1031 814" content="<mxfile host="Electron" modified="2020-05-26T16:51:55.732Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/12.4.2 Chrome/78.0.3904.130 Electron/7.1.4 Safari/537.36" etag="AL0VMCm1bAciMm2DO9xB" version="12.4.2" type="device" pages="1"><diagram id="i7RjRSwkiHJf6eIeykeo" name="Page-1">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</diagram></mxfile>" style="background-color: rgb(255, 255, 255);"><defs><clipPath id="mx-clip-604-711-422-26-0"><rect x="604" y="711" width="422" height="26"/></clipPath><clipPath id="mx-clip-604-737-422-26-0"><rect x="604" y="737" width="422" height="26"/></clipPath><clipPath id="mx-clip-604-763-422-26-0"><rect x="604" y="763" width="422" height="26"/></clipPath><clipPath id="mx-clip-604-789-422-26-0"><rect x="604" y="789" width="422" height="26"/></clipPath><clipPath id="mx-clip-4-711-422-26-0"><rect x="4" y="711" width="422" height="26"/></clipPath><clipPath id="mx-clip-4-737-422-26-0"><rect x="4" y="737" width="422" height="26"/></clipPath><clipPath id="mx-clip-4-763-422-26-0"><rect x="4" y="763" width="422" height="26"/></clipPath><clipPath id="mx-clip-4-789-422-26-0"><rect x="4" y="789" width="422" height="26"/></clipPath></defs><g><path d="M 815 375 L 815 573.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 815 578.88 L 811.5 571.88 L 815 573.63 L 818.5 571.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(784.5,472.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="61" height="11" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); 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:inherLine truncated
|
||||
|
After Width: | Height: | Size: 24 KiB |
@@ -9,6 +9,7 @@ getting started information and general documentation.
|
||||
* @ref md_CHANGELOG - If this is the web version of the docs, the changelog
|
||||
also includes a section for changes that have not yet been in a tagged
|
||||
release.
|
||||
* @ref md_targets
|
||||
* @ref md_writing-a-new-driver (**not complete**)
|
||||
|
||||
## Source layout
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
# Understanding and Writing Targets
|
||||
|
||||
Monado is designed to be a collection of related but independent modules. The
|
||||
final build product that brings all the desired components together, potentially
|
||||
with additional code, is called the "target". There are several targets included
|
||||
in the Monado source tree (in `src/xrt/targets/`) including:
|
||||
|
||||
- `cli` - builds `monado-cli` executable
|
||||
- `openxr` - builds `libopenxr-monado.so` OpenXR runtime shared object
|
||||
- `gui` - builds `monado-gui` executable
|
||||
- `service` - builds `monado-service` executable (if `XRT_FEATURE_SERVICE` is
|
||||
enabled)
|
||||
|
||||
There is also a directory `common` which builds two static libraries. Because
|
||||
the "target" is responsible for pulling in all the desired drivers, etc. it can
|
||||
lead to some repetition if multiple targets want the same driver collection. For
|
||||
this reason, the "all drivers" code shared between many targets is located here,
|
||||
though you could consider it a part of the individual targets.
|
||||
|
||||
## Requirements of a Target
|
||||
|
||||
A target must first provide the entry point desired: `int main()` if it's an
|
||||
executable, or the well-known symbol name if it's a shared library. In some
|
||||
cases, the entry point might be provided by one of the modules being combined to
|
||||
form the target. For instance, an OpenXR runtime must expose
|
||||
`xrNegotiateLoaderRuntimeInterface`: this function is provided by the OpenXR
|
||||
state tracker `st_oxr`, so the OpenXR runtime target just has to link the state
|
||||
tracker in and ensure it is present in the final build product.
|
||||
|
||||
Then, the target must provide access to the collection of devices desired. The
|
||||
code is currently (26-May-2020) in the middle of a transition, from a
|
||||
"prober"-centric interface to an "instance"-centric interface.
|
||||
|
||||
- Target device access was historically done by implementing
|
||||
`xrt_prober_create`, typically through a call to
|
||||
`xrt_prober_create_with_lists`, often passing the target list defined in the
|
||||
common `target_lists.c` shared file. This is currently still somewhat-required
|
||||
but not as central as before, and will be removed soon.
|
||||
- Target device access is now provided by implementing the `xrt_instance`
|
||||
interface in your target and providing a definition of `xrt_instance_create`
|
||||
that instantiates your implementation.
|
||||
|
||||
All methods of `xrt_instance` are required, though the `get_prober` method may
|
||||
output a null pointer if the instance is not using a prober. For more detailed
|
||||
information on this interface, see the documentation for @ref xrt_instance
|
||||
|
||||
## Sample Call Trees
|
||||
|
||||
For clarity, call trees are included below for the OpenXR runtime in two general
|
||||
cases: `XRT_FEATURE_SERVICE` disabled, and `XRT_FEATURE_SERVICE` enabled. Note
|
||||
that even with `XRT_FEATURE_SERVICE` enabled, the other targets (cli, gui) more
|
||||
closely resembler the `XRT_FEATURE_SERVICE` disabled diagram: they contain the
|
||||
device drivers internally rather than contacting the service.
|
||||
|
||||
### XRT_FEATURE_SERVICE disabled
|
||||
|
||||
This is the simplest architecture. It is also the architecture used by the
|
||||
various extra targets like `monado-cli` even when building with
|
||||
`XRT_FEATURE_SERVICE` enabled.
|
||||
|
||||

|
||||
|
||||
### XRT_FEATURE_SERVICE enabled
|
||||
|
||||
Note that in this case, there are two processes involved, which have different
|
||||
`xrt_instance` implementations.
|
||||
|
||||
- The runtime has a "stub" or "client proxy" implementation that delegates to
|
||||
the service over the IPC.
|
||||
- The service has a normal or complete instance implementation that actually
|
||||
provides access to devices, etc.
|
||||
|
||||

|
||||
Reference in new issue
Block a user