/** * Copyright 1998-2013 Epic Games, Inc. All Rights Reserved. */ /** * This interface provides accessors to the platform specific system methods, * features that do not pertain to a single user but to the game as a whole. */ interface OnlineSystemInterface; /** * Determines if the ethernet link is connected or not */ function bool HasLinkConnection(); /** * Delegate fired when the network link status changes * * @param bIsConnected whether the link is currently connected or not */ delegate OnLinkStatusChange(bool bIsConnected); /** * Adds the delegate used to notify the gameplay code that link status changed * * @param LinkStatusDelegate the delegate to use for notifications */ function AddLinkStatusChangeDelegate(delegate LinkStatusDelegate); /** * Removes the delegate from the notify list * * @param LinkStatusDelegate the delegate to remove */ function ClearLinkStatusChangeDelegate(delegate LinkStatusDelegate); /** * Delegate fired when an external UI display state changes (opening/closing) * * @param bIsOpening whether the external UI is opening or closing */ delegate OnExternalUIChange(bool bIsOpening); /** * Sets the delegate used to notify the gameplay code that external UI state * changed (opened/closed) * * @param ExternalUIDelegate the delegate to use for notifications */ function AddExternalUIChangeDelegate(delegate ExternalUIDelegate); /** * Removes the delegate from the notification list * * @param ExternalUIDelegate the delegate to remove */ function ClearExternalUIChangeDelegate(delegate ExternalUIDelegate); /** * Determines the current notification position setting */ function ENetworkNotificationPosition GetNetworkNotificationPosition(); /** * Sets a new position for the network notification icons/images * * @param NewPos the new location to use */ function SetNetworkNotificationPosition(ENetworkNotificationPosition NewPos); //@HSL_BEGIN_XBOX /** * Delegate fired when the controller becomes dis/connected * * @param ControllerId the id of the controller that changed connection state * @param bIsConnected whether the controller connected (true) or disconnected (false) * @param bPauseGame wheater the game should pause or not */ delegate OnControllerChange(int ControllerId,bool bIsConnected,bool bPauseGame); //@HSL_END_XBOX /** * Sets the delegate used to notify the gameplay code that the controller state changed * * @param ControllerChangeDelegate the delegate to use for notifications */ function AddControllerChangeDelegate(delegate ControllerChangeDelegate); /** * Removes the delegate used to notify the gameplay code that the controller state changed * * @param ControllerChangeDelegate the delegate to remove */ function ClearControllerChangeDelegate(delegate ControllerChangeDelegate); /** * Determines if the specified controller is connected or not * * @param ControllerId the controller to query * * @return true if connected, false otherwise */ function bool IsControllerConnected(int ControllerId); //@HSL_BEGIN - JRO - Make sure we can properly disable multiplayer features when not connected /** * Retrieves the current connection status * * @return the current connection status */ function EOnlineServerConnectionStatus GetCurrentConnectionStatus(); //@HSL_END /** * Delegate fire when the online server connection state changes * * @param ConnectionStatus the new connection status */ delegate OnConnectionStatusChange(EOnlineServerConnectionStatus ConnectionStatus); /** * Adds the delegate to the list to be notified when the connection status changes * * @param ConnectionStatusDelegate the delegate to add */ function AddConnectionStatusChangeDelegate(delegate ConnectionStatusDelegate); /** * Removes the delegate from the notify list * * @param ConnectionStatusDelegate the delegate to remove */ function ClearConnectionStatusChangeDelegate(delegate ConnectionStatusDelegate); /** * Determines the NAT type the player is using */ function ENATType GetNATType(); /** * Delegate fired when a storage device change is detected */ delegate OnStorageDeviceChange(); /** * Adds the delegate to the list to be notified when a storage device changes * * @param StorageDeviceChangeDelegate the delegate to add */ function AddStorageDeviceChangeDelegate(delegate StorageDeviceChangeDelegate); /** * Removes the delegate from the notify list * * @param StorageDeviceChangeDelegate the delegate to remove */ function ClearStorageDeviceChangeDelegate(delegate StorageDeviceChangeDelegate); /** * Determine the locale (country code) for the player */ function int GetLocale();