IOpenXRExtensionPlugin

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

OpenXRHMD

Header

/Engine/Plugins/Runtime/OpenXR/Source/OpenXRHMD/Public/IOpenXRExtensionPlugin.h

Include

#include "IOpenXRExtensionPlugin.h"

Syntax

class IOpenXRExtensionPlugin : public IModularFeature

Destructors

Name Description

Public function Virtual

~IOpenXRExtensionPlugin()

Functions

Name Description

Public function Virtual

void

 

AddActions

(
    XrInstance Instance,
    TFunction< XrAction(XrActionType In...
)

Add any actions provided by the plugin to Actions with suggested bindings.

Public function Virtual

IOpenXRCusto...

 

GetCustomAnchorSupport()

Get custom anchor interface if provided by this extension.

Public function Virtual

IOpenXRCusto...

 

GetCustomCaptureSupport

(
    const EARCaptureType CaptureType
)

Get custom capture interface if provided by this extension.

Public function Virtual

bool

 

GetCustomLoader

(
    PFN_xrGetInstanceProcAddr* Out...
)

Optionally provide a custom loader for the OpenXR plugin.

Public function Virtual

FOpenXRRende...

 

GetCustomRenderBridge

(
    XrInstance InInstance,
    XrSystemId InSystem
)

Optionally provide a custom render bridge for the OpenXR plugin.

Public function Virtual

bool

 

GetInteractionProfile

(
    XrInstance InInstance,
    FString& OutKeyPrefix,
    XrPath& OutPath,
    bool& OutHasHaptics
)

Set the output parameters to add an interaction profile to OpenXR Input

Public function Static

FName

 

GetModularFeatureName()

Public function Virtual

bool

 

GetOptionalExtensions

(
    TArray< const ANSICHAR* >& Ou...
)

Fill the array with extensions optionally supported by the plugin If false is returned the plugin and its extensions will be ignored

Public function Virtual

bool

 

GetRequiredExtensions

(
    TArray< const ANSICHAR* >& Ou...
)

Fill the array with extensions required by the plugin If false is returned the plugin and its extensions will be ignored

Public function Virtual

bool

 

GetSpectatorScreenController

Set a spectator screen controller specific to the platform If true is returned and OutSpectatorScreenController is nullptr, spectator screen will be disabled If false is returned a default spectator screen controller will be created

Public function Virtual

void

 

GetViewConfigurations

(
    XrSystemId InSystem,
    TArray< XrViewConfigurationView >&...
)

Callback to provide extra view configurations that should be rendered in the main render pass

Public function Virtual

void

 

GetViewLocations

(
    XrSession InSession,
    XrTime InDisplayTime,
    XrSpace InViewSpace,
    TArray< XrView >& OutViews
)

Callback to provide the pose and fov of each view that was provided in GetViewConfigurations

Public function Virtual

bool

 

IsStandaloneStereoOnlyDevice()

Indicates that the device we're currently running does not support a spectator view.

Public function Virtual

void

 

OnAcquireSwapchainImage

(
    XrSession InSession
)

OpenXRHMD::OnBeginRendering_RenderThread, before acquiring swapchain.

Public function Virtual

const void &...

 

OnBeginDepthInfo

(
    XrSession InSession,
    int32 InLayerIndex,
    int32 InViewIndex,
    const void* InNext
)

Public function Virtual

const void &...

 

OnBeginFrame

(
    XrSession InSession,
    XrTime DisplayTime,
    const void* InNext
)

OpenXRHMD::OnBeginRendering_RHIThread.

Public function Virtual

const void &...

 

OnBeginProjectionView

(
    XrSession InSession,
    int32 InLayerIndex,
    int32 InViewIndex,
    const void* InNext
)

Public function Virtual

const void &...

 

OnBeginSession

(
    XrSession InSession,
    const void* InNext
)

Public function Virtual

const void &...

 

OnCreateInstance

(
    IOpenXRHMDPlugin* InPlugin,
    const void* InNext
)

Callbacks with returned pointer added to next chain, do not return pointers to structs on the stack.

Public function Virtual

const void &...

 

OnCreateSession

(
    XrInstance InInstance,
    XrSystemId InSystem,
    const void* InNext
)

Public function Virtual

const void &...

 

OnEndFrame

(
    XrSession InSession,
    XrTime DisplayTime,
    const TArray< XrSwapchainSubImage >...,
    const TArray< XrSwapchainSubImage >...,
    const void* InNext
)

FOpenXRRenderBridge::Present, RHI thread.

Public function Virtual

const void &...

 

OnEndProjectionLayer

(
    XrSession InSession,
    int32 InLayerIndex,
    const void* InNext,
    XrCompositionLayerFlags& OutFlags
)

Public function Virtual

void *

 

OnEnumerateViewConfigurationViews

(
    XrInstance InInstance,
    XrSystemId InSystem,
    XrViewConfigurationType InViewConfi...,
    uint32_t InViewIndex,
    void* InNext
)

Public function Virtual

void

 

OnEvent

(
    XrSession InSession,
    const XrEventDataBaseHeader* I...
)

Use this callback to handle events that the OpenXR plugin doesn't handle itself

Public function Virtual

const void &...

 

OnGetSystem

(
    XrInstance InInstance,
    const void* InNext
)

Public function Virtual

const void &...

 

OnLocateViews

(
    XrSession InSession,
    XrTime InDisplayTime,
    const void* InNext
)

Public function Virtual

void

 

OnPauseARSession()

Stop the AR system but leave its internal state intact.

Public function Virtual

void

 

OnStartARSession

(
    UARSessionConfig* SessionConfi...
)

Start the AR system.

Public function Virtual

void

 

OnStopARSession()

Stop the AR system and reset its internal state; this task must succeed.

Public function Virtual

const void &...

 

OnSyncActions

(
    XrSession InSession,
    const void* InNext
)

FOpenXRInput::Tick, game thread, setting up for xrSyncActions. This happens near the start of the game frame.

Public function Virtual

void *

 

OnWaitFrame

(
    XrSession InSession,
    void* InNext
)

OpenXRHMD::OnBeginRendering_GameThread.

Public function Virtual

void

 

PostCreateSession

(
    XrSession InSession
)

Public function Virtual

void

 

PostGetSystem

(
    XrInstance InInstance,
    XrSystemId InSystem
)

Public function Virtual

void

 

PostSyncActions

(
    XrSession InSession
)

FOpenXRInput::Tick, game thread, after xrSyncActions.

Public function

void

 

RegisterOpenXRExtensionModularFeature()

Register module as an extension on startup.

Public function

void

 

UnregisterOpenXRExtensionModularFeature()

Public function Virtual

void

 

UpdateDeviceLocations

(
    XrSession InSession,
    XrTime DisplayTime,
    XrSpace TrackingSpace
)

OpenXRHMD::OnStartGameFrame.

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss