UOvrPlatformSubsystem is a class that provides functionality for interacting with the Oculus platform. It includes several public member functions and attributes, and its attributes include delegates for various Oculus platform notifications. See more info about Platform Solutions here.
This event is triggered when a launch intent is received, whether it's a cold or warm start. The payload contains the type of intent that was received. To obtain additional details, you should call the UOvrFunctionsBlueprintLibrary::ApplicationLifecycle_GetLaunchDetails function.
Sent when the user is finished using the invite panel to send out invitations. Contains a list of invitees. Parameter: Callback is a function that will be called when the invitation sent status changes. FOvrLaunchInvitePanelFlowResult has 1 member: UserList field FOvrLaunchInvitePanelFlowResult::InvitedUsers - A list of users that were sent an invitation to the session.
Sent when a user has chosen to join the destination/lobby/match. Read all the fields to figure out where the user wants to go and take the appropriate actions to bring them there. If the user is unable to go there, provide adequate messaging to the user on why they cannot go there. These notifications should be responded to immediately. Parameter: Callback is a function that will be called when a user has chosen to join the destination/lobby/match. FOvrGroupPresenceJoinIntent has 4 members: string field FOvrGroupPresenceJoinIntent::DeeplinkMessage - An opaque string provided by the developer to help them deeplink to content. string field FOvrGroupPresenceJoinIntent::DestinationApiName - The destination the current user wants to go to. string field FOvrGroupPresenceJoinIntent::LobbySessionId - The lobby session the current user wants to go to. string field FOvrGroupPresenceJoinIntent::MatchSessionId - The match session the current user wants to go to.
Sent when the user has chosen to leave the destination/lobby/match from the Oculus menu. Read the specific fields to check the user is currently from the destination/lobby/match and take the appropriate actions to remove them. Update the user's presence clearing the appropriate fields to indicate the user has left. Parameter: Callback is a function that will be called when the user has chosen to leave the destination/lobby/match. FOvrGroupPresenceLeaveIntent has 3 members: string field FOvrGroupPresenceLeaveIntent::DestinationApiName - The destination the current user wants to leave. string field FOvrGroupPresenceLeaveIntent::LobbySessionId - The lobby session the current user wants to leave. string field FOvrGroupPresenceLeaveIntent::MatchSessionId - The match session the current user wants to leave.
Indicates that the livestreaming session has been updated. You can use this information to throttle your game performance or increase CPU/GPU performance. Use FOvrLivestreamingStatus to extract the updated livestreaming status.
Sent when the list of known connected sessions has changed. Contains the new list of sessions. The payload will be a type of FOvrNetSyncSessionsChangedNotification.
Sent to indicate that some part of the overall state of SystemVoip has changed. Use field FOvrSystemVoipState::Status and the properties of FOvrSystemVoipState to extract the state that triggered the notification. Note that the state may have changed further since the notification was generated, and that you may call the GetSystemVoip...() family of functions at any time to get the current state directly.
Gets VR camera related WebRTC data channel messages for update. This method is used to retrieve messages that are sent over the WebRTC data channel, which can include information about the VR camera system, such as its current state or any errors that may have occurred.
Gets the surface and update action from the platform WebRTC for update. This method is used to retrieve information about the current state of the VR camera system, including any updates that may be required. See more info about Platform Solutions here.
Member Functions
virtual bool ShouldCreateSubsystem
( UObject * Outer )
Determines whether the subsystem should be created.
Parameters
Outer
The outer object that this subsystem is being created for.
Returns
True if the subsystem should be created, false otherwise.
virtual void Initialize
( FSubsystemCollectionBase & Collection )
Initializes the subsystem.This function is called when the subsystem is first created. It is responsible for setting up any initial state or resources that the subsystem needs to operate.
Parameters
Collection
The collection of subsystems that this subsystem is a part of.
virtual void Deinitialize ( )
Deinitializes the subsystem.This function is called when the subsystem is being shut down. It is responsible for releasing any resources or cleaning up any state that was created during initialization.
void StartMessagePump ( )
The subsystem waits for your authorization to start processing messages, allowing you to register your callbacks first.
Adds a delegate to be called when an OVR request completes.This function allows you to register a callback function that will be executed when a specific OVR request completes.The delegate will be passed a single argument, which is the result of the request.
Parameters
RequestId
The ID of the request that the delegate will be called for.
Delegate
The delegate to be called when the request completes. The delegate should take a single argument of type FOvrPlatformMessageOnComplete.
Removes a delegate that was previously added with AddRequestDelegate.This function removes a delegate that was previously registered to be called when an OVR request completes.
Parameters
RequestId
The ID of the request that the delegate was added for.
Gets a multicast delegate that will be called for all messages of a specific type.This function returns a reference to a multicast delegate that will be called for all messages of a specific type. You can use this delegate to register a callback function that will be executed whenever a message of the specified type is received.
Parameters
MessageType
The type of message that the delegate will be called for.
Returns
A reference to the multicast delegate. The delegate should take a single argument of type FOvrPlatformMulticastMessageOnComplete.
Removes a delegate that was previously registered with GetNotifDelegate.This function removes a delegate that was previously registered to be called for all messages of a specific type.
Parameters
MessageType
The type of message that the delegate was registered for.