Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames

Engine.UIDataStore_OnlineGameSearch

Extends
UIDataStore_Remote
Modifiers
native ( inherit ) implements ( UIListElementProvider , UIListElementCellProvider ) abstract dependson ( OnlineGameSearch ) transient

This class is responsible for mapping properties in an OnlineGameSearch object to something that the UI system can consume. It exposes two things DesiredSettings and SearchResults. DesiredSettings is just publishes the properties/string settings of an online game settings and SearchResults is the set of games found by the search. NOTE: Each game needs to derive at least one class from this one in order to expose the game's specific search class(es)

Core.Object
|   
+-- Engine.UIRoot
   |   
   +-- Engine.UIDataProvider
      |   
      +-- Engine.UIDataStore
         |   
         +-- Engine.UIDataStore_Remote
            |   
            +-- Engine.UIDataStore_OnlineGameSearch

Direct Known Subclasses:

UTDataStore_GameSearchBase

Variables Summary
intActiveSearchIndex
OnlineGameInterfaceGameInterface
array<GameSearchCfg>GameSearchCfgList
OnlineSubsystemOnlineSub
nameSearchResultsName
intSelectedIndex
Inherited Variables from Engine.UIDataStore
RefreshSubscriberNotifies, Tag

Structures Summary
GameSearchCfg
GameSearchClass, DefaultGameSettingsClass, SearchResultsProviderClass, DesiredSettingsProvider, SearchResults, Search, SearchName

Functions Summary
function AddJoinableOfflineServer (const out string OwningPlayerId, const out string ServerName, const out string ServerIP)
function AddOfflineServer (const out string OwningPlayerId, const out string ServerName)
function BuildSearchResults ()
function ClearAllSearchResults ()))
functionint FindSearchConfigurationIndex (name SearchTag ))
eventOnlineGameSearch GetActiveGameSearch ()))
eventOnlineGameSearch GetCurrentGameSearch ()))
eventbool GetSearchResultFromIndex (int ListIndex, ut OnlineGameSearchResult Result))
event Init ()))
functionbool InvalidateCurrentSearchResults ()))
event MoveToNext (optional bool bInvalidateExistingSearchResults=true))
event MoveToPrevious (optional bool bInvalidateExistingSearchResults=true))
function OnSearchComplete (bool bWasSuccessful))
functionbool OverrideQuerySubmission (byte ControllerId, OnlineGameSearch Search ))
event SetCurrentByIndex (int NewIndex, optional bool bInvalidateExistingSearchResults=true))
event SetCurrentByName (name SearchName, optional bool bInvalidateExistingSearchResults=true))
eventbool ShowHostGamercard (byte ControllerIndex, nt ListIndex))
eventbool SubmitGameSearch (byte ControllerIndex, optional bool bInvalidateExistingSearchResults=true))
Inherited Functions from Engine.UIDataStore
GetDataStoreClient, NotifyGameSessionEnded, OnCommit, RefreshSubscribers, Registered, SubscriberAttached, SubscriberDetached, Unregistered


Variables Detail

ActiveSearchIndex Source code

var int ActiveSearchIndex;
the index into the set of providers/searches for the query that is currently active

GameInterface Source code

var OnlineGameInterface GameInterface;
Cached game interface pointer

GameSearchCfgList Source code

var const array<GameSearchCfg> GameSearchCfgList;
The set of game searches and results

OnlineSub Source code

var OnlineSubsystem OnlineSub;
Cached online subsystem pointer

SearchResultsName Source code

var const name SearchResultsName;
Cached FName for faster compares

SelectedIndex Source code

var int SelectedIndex;
The index into the set of providers/searches for the query that the user most recently requested


Structures Detail

GameSearchCfg Source code

struct GameSearchCfg
{
var class<OnlineGameSettings> DefaultGameSettingsClass;
var UIDataProvider_Settings DesiredSettingsProvider;
var class<OnlineGameSearch> GameSearchClass;
var OnlineGameSearch Search;
var name SearchName;
var array<UIDataProvider_Settings> SearchResults;
var class<UIDataProvider_Settings> SearchResultsProviderClass;
};
Holds the items needed for keeping a list of game searches around
DefaultGameSettingsClass:
The OnlineGameSettings derived class to use as the default data
DesiredSettingsProvider:
Publishes the desired settings from the game search object
GameSearchClass:
The OnlineGameSeach derived class to load and populate the UI with
Search:
OnlineGameSearch object that will be exposed to the UI
SearchName:
For finding via name
SearchResults:
Array of providers that handle the search results
SearchResultsProviderClass:
The data provider to use for each search result that is returned. Useful when a game wishes to create "meta" properties from search results.


Functions Detail

AddJoinableOfflineServer Source code

native function AddJoinableOfflineServer ( const out string OwningPlayerId, const out string ServerName, const out string ServerIP )
As above, but allows you to provide an IP address for the server; which can be used to attempt a direct connect

AddOfflineServer Source code

native function AddOfflineServer ( const out string OwningPlayerId, const out string ServerName )
Adds an offline placeholder server to the list of results Used to keep history and favorites in the list after a search comes back without them
@param OwningPlayerId the id of the player who created this server (last known)
@param ServerName the description of the server (last known)

BuildSearchResults Source code

native function BuildSearchResults ( )
Tells this provider to rebuild it's array data

ClearAllSearchResults Source code

function ClearAllSearchResults ( ) )
Attempts to clear the server query results for all gametypes

FindSearchConfigurationIndex Source code

function int FindSearchConfigurationIndex ( name SearchTag ) )
Find the index of the search configuration element which has the specified tag.
@param SearchTag the name of the search configuration to find
@return the index of the search configuration with a tag matching the input value or INDEX_NONE if none were found.

GetActiveGameSearch Source code

event OnlineGameSearch GetActiveGameSearch ( ) )
returns the game search object that last submitted a server query

GetCurrentGameSearch Source code

event OnlineGameSearch GetCurrentGameSearch ( ) )
Returns the game search object that is currently selected

GetSearchResultFromIndex Source code

event bool GetSearchResultFromIndex ( int ListIndex,out OnlineGameSearchResult Result) )
Returns the search result for the list index specified
@param ListIndex the index to find the result for
@return the search results (empty if out of bounds)

Init Source code

event Init ( ) )
Registers the delegate with the online subsystem

InvalidateCurrentSearchResults Source code

function bool InvalidateCurrentSearchResults ( ) )
Attempts to free the results from the last search that was submitted.

MoveToNext Source code

event MoveToNext ( optional bool bInvalidateExistingSearchResults=true) )
Moves to the next item in the list
@param bInvalidateExistingSearchResults specify FALSE to keep previous searches (i.e. for other gametypes) in memory; default behavior is to clear all search results when switching to a different item in the game search list

MoveToPrevious Source code

event MoveToPrevious ( optional bool bInvalidateExistingSearchResults=true) )
Moves to the previous item in the list
@param bInvalidateExistingSearchResults specify FALSE to keep previous searches (i.e. for other gametypes) in memory; default behavior is to clear all search results when switching to a different item in the game search list

OnSearchComplete Source code

function OnSearchComplete ( bool bWasSuccessful) )
Called by the online subsystem when the game search has completed
@param bWasSuccessful true if the async action completed without error, false if there was an error

OverrideQuerySubmission Source code

protected function bool OverrideQuerySubmission ( byte ControllerId, OnlineGameSearch Search ) )
Worker for SubmitGameSeach; allows child classes to perform additional work before the query is submitted.
@param ControllerId the index of the controller for the player to perform the search for.
@param Search the search object that will be used to generate the query.
@return TRUE to prevent SubmitGameSeach from submitting the search (such as when you do this step yourself).

SetCurrentByIndex Source code

event SetCurrentByIndex ( int NewIndex, optional bool bInvalidateExistingSearchResults=true) )
Sets the index into the list of game search to use
@param NewIndex the new index to use
@param bInvalidateExistingSearchResults specify FALSE to keep previous searches (i.e. for other gametypes) in memory; default behavior is to clear all search results when switching to a different item in the game search list

SetCurrentByName Source code

event SetCurrentByName ( name SearchName, optional bool bInvalidateExistingSearchResults=true) )
Sets the index into the list of game settings to use
@param SearchName the name of the search to find
@param bInvalidateExistingSearchResults specify FALSE to keep previous searches (i.e. for other gametypes) in memory; default behavior is to clear all search results when switching to a different item in the game search list

ShowHostGamercard Source code

event bool ShowHostGamercard ( byte ControllerIndex,int ListIndex) )
Displays the gamercard for the specified host
@param ControllerIndex the ControllerId for the player displaying the gamercard
@param ListIndex the item in the list to display the gamercard for

SubmitGameSearch Source code

event bool SubmitGameSearch ( byte ControllerIndex, optional bool bInvalidateExistingSearchResults=true) )
Called to kick off an online game search and set up all of the delegates needed
@param ControllerIndex the ControllerId for the player to perform the search for
@param bInvalidateExistingSearchResults specify FALSE to keep previous searches (i.e. for other gametypes) in memory; default behavior is to clear all search results when switching to a different item in the game search list
@return TRUE if the search call works, FALSE otherwise


Defaultproperties

defaultproperties
{
   SearchResultsName="SearchResults"
   ActiveSearchIndex=-1
   Tag="OnlineGameSearch"
   WriteAccessType=ACCESS_WriteAll
   Name="Default__UIDataStore_OnlineGameSearch"
   ObjectArchetype=UIDataStore_Remote'Engine.Default__UIDataStore_Remote'
}

Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames
Creation time: sk 18-3-2018 10:00:46.849 - Created with UnCodeX