# XR Browser implementation _For a more high level overview of the entire WebXR stack, please refer to [components/webxr](https://source.chromium.org/chromium/chromium/src/+/main:components/webxr/README.md)._ This folder contains trusted XR code. It is largely responsible for either communicating with other trusted code, or to broker connections and communication between either other trusted code or the renderer process and the various XR device runtimes (which are hosted in a separate process). The primary entrypoint is the [`VRServiceImpl`][vr service impl], which implements the [`VRService`][vr service] mojom interface. This service is responsible for brokering connections between the renderer process and the device process, both for the sake of starting up an XR Session, as well as simply querying support for a session. Each browsing context ends up creating its own [`VRService`][vr service]. A [`VRServiceImpl`][vr service impl] instance, when tracking a session, also leans on code from the ./metrics directory to log various metrics about that session, both at creation and termination. The [`XRRuntimeManager`][runtime manager] is a singleton component which maintains references to [`BrowserXrRuntime`][xr runtime] objects representing the various devices and/or sensor groups that could back an XR Session. The [`XRRuntimeManager`][runtime manager] is responsible for tracking the state of the hardware and aiding the multiple [`VRServices`][vr service impl] with communicating/tracking this state. When necessary, [`XRFrameSinkClient`][xr frame sink] instances aid communication with viz for runtimes which utilize that component to manage their own compositing. Some chrome-specific customizations based on this content implementation can be found in [chrome/browser/vr](https://chromium.googlesource.com/chromium/src/+/HEAD/chrome/browser/vr) [vr service impl]: https://chromium.googlesource.com/chromium/src/+/HEAD/content/browser/xr/service/vr_service_impl.h [vr service]: https://chromium.googlesource.com/chromium/src/+/HEAD/device/vr/public/mojom/vr_service.mojom [runtime manager]: https://chromium.googlesource.com/chromium/src/+/HEAD/content/browser/xr/service/xr_runtime_manager_impl.h [xr runtime]: https://chromium.googlesource.com/chromium/src/+/HEAD/content/browser/xr/service/browser_xr_runtime.h [xr frame sink]: https://chromium.googlesource.com/chromium/src/+/HEAD/content/browser/xr/service/xr_frame_sink_client_impl.h