167 lines
9.2 KiB
C
167 lines
9.2 KiB
C
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
#pragma once
|
|
|
|
#include "eos_leaderboards_types.h"
|
|
|
|
/**
|
|
* The following EOS_Leaderboards_* functions allow you to query existing leaderboard definitions that have been defined for your application.
|
|
* You can retrieve a list of scores for the top users for each Leaderboard.
|
|
* You can also query scores for one or more users.
|
|
*/
|
|
|
|
/**
|
|
* Query for a list of existing leaderboards definitions including their attributes.
|
|
*
|
|
* @param Options Structure containing information about the application whose leaderboard definitions we're retrieving.
|
|
* @param ClientData Arbitrary data that is passed back to you in the CompletionDelegate.
|
|
* @param CompletionDelegate This function is called when the query operation completes.
|
|
*
|
|
* @return EOS_Success if the operation completes successfully
|
|
* EOS_InvalidParameters if any of the options are incorrect
|
|
*/
|
|
EOS_DECLARE_FUNC(void) EOS_Leaderboards_QueryLeaderboardDefinitions(EOS_HLeaderboards Handle, const EOS_Leaderboards_QueryLeaderboardDefinitionsOptions* Options, void* ClientData, const EOS_Leaderboards_OnQueryLeaderboardDefinitionsCompleteCallback CompletionDelegate);
|
|
|
|
/**
|
|
* Fetch the number of leaderboards definitions that are cached locally.
|
|
*
|
|
* @param Options The Options associated with retrieving the leaderboard count.
|
|
*
|
|
* @see EOS_Leaderboards_CopyLeaderboardDefinitionByIndex
|
|
* @see EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId
|
|
*
|
|
* @return Number of leaderboards or 0 if there is an error
|
|
*/
|
|
EOS_DECLARE_FUNC(uint32_t) EOS_Leaderboards_GetLeaderboardDefinitionCount(EOS_HLeaderboards Handle, const EOS_Leaderboards_GetLeaderboardDefinitionCountOptions* Options);
|
|
|
|
/**
|
|
* Fetches a leaderboard definition from the cache using an index.
|
|
*
|
|
* @param Options Structure containing the index being accessed.
|
|
* @param OutLeaderboardDefinition The leaderboard data for the given index, if it exists and is valid, use EOS_Leaderboards_Definition_Release when finished.
|
|
*
|
|
* @see EOS_Leaderboards_Definition_Release
|
|
*
|
|
* @return EOS_Success if the information is available and passed out in OutLeaderboardDefinition
|
|
* EOS_InvalidParameters if you pass a null pointer for the out parameter
|
|
* EOS_NotFound if the leaderboard is not found
|
|
*/
|
|
EOS_DECLARE_FUNC(EOS_EResult) EOS_Leaderboards_CopyLeaderboardDefinitionByIndex(EOS_HLeaderboards Handle, const EOS_Leaderboards_CopyLeaderboardDefinitionByIndexOptions* Options, EOS_Leaderboards_Definition ** OutLeaderboardDefinition);
|
|
|
|
/**
|
|
* Fetches a leaderboard definition from the cache using a leaderboard ID.
|
|
*
|
|
* @param Options Structure containing the leaderboard ID being accessed.
|
|
* @param OutLeaderboardDefinition The leaderboard definition for the given leaderboard ID, if it exists and is valid, use EOS_Leaderboards_Definition_Release when finished.
|
|
*
|
|
* @see EOS_Leaderboards_Definition_Release
|
|
*
|
|
* @return EOS_Success if the information is available and passed out in OutLeaderboardDefinition
|
|
* EOS_InvalidParameters if you pass a null pointer for the out parameter
|
|
* EOS_NotFound if the leaderboard data is not found
|
|
*/
|
|
EOS_DECLARE_FUNC(EOS_EResult) EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId(EOS_HLeaderboards Handle, const EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardIdOptions* Options, EOS_Leaderboards_Definition ** OutLeaderboardDefinition);
|
|
|
|
/**
|
|
* Retrieves top leaderboard records by rank in the leaderboard matching the given leaderboard ID.
|
|
*
|
|
* @param Options Structure containing information about the leaderboard records we're retrieving.
|
|
* @param ClientData Arbitrary data that is passed back to you in the CompletionDelegate.
|
|
* @param CompletionDelegate This function is called when the query operation completes.
|
|
*
|
|
* @return EOS_Success if the operation completes successfully
|
|
* EOS_InvalidParameters if any of the options are incorrect
|
|
*/
|
|
EOS_DECLARE_FUNC(void) EOS_Leaderboards_QueryLeaderboardRanks(EOS_HLeaderboards Handle, const EOS_Leaderboards_QueryLeaderboardRanksOptions* Options, void* ClientData, const EOS_Leaderboards_OnQueryLeaderboardRanksCompleteCallback CompletionDelegate);
|
|
|
|
/**
|
|
* Fetch the number of leaderboard records that are cached locally.
|
|
*
|
|
* @param Options The Options associated with retrieving the leaderboard record count.
|
|
*
|
|
* @see EOS_Leaderboards_CopyLeaderboardRecordByIndex
|
|
* @see EOS_Leaderboards_CopyLeaderboardRecordByUserId
|
|
*
|
|
* @return Number of leaderboard records or 0 if there is an error
|
|
*/
|
|
EOS_DECLARE_FUNC(uint32_t) EOS_Leaderboards_GetLeaderboardRecordCount(EOS_HLeaderboards Handle, const EOS_Leaderboards_GetLeaderboardRecordCountOptions* Options);
|
|
|
|
/**
|
|
* Fetches a leaderboard record from a given index.
|
|
*
|
|
* @param Options Structure containing the index being accessed.
|
|
* @param OutLeaderboardRecord The leaderboard record for the given index, if it exists and is valid, use EOS_Leaderboards_LeaderboardRecord_Release when finished.
|
|
*
|
|
* @see EOS_Leaderboards_LeaderboardRecord_Release
|
|
*
|
|
* @return EOS_Success if the leaderboard record is available and passed out in OutLeaderboardRecord
|
|
* EOS_InvalidParameters if you pass a null pointer for the out parameter
|
|
* EOS_NotFound if the leaderboard is not found
|
|
*/
|
|
EOS_DECLARE_FUNC(EOS_EResult) EOS_Leaderboards_CopyLeaderboardRecordByIndex(EOS_HLeaderboards Handle, const EOS_Leaderboards_CopyLeaderboardRecordByIndexOptions* Options, EOS_Leaderboards_LeaderboardRecord ** OutLeaderboardRecord);
|
|
|
|
/**
|
|
* Fetches a leaderboard record from a given user ID.
|
|
*
|
|
* @param Options Structure containing the user ID being accessed.
|
|
* @param OutLeaderboardRecord The leaderboard record for the given user ID, if it exists and is valid, use EOS_Leaderboards_LeaderboardRecord_Release when finished.
|
|
*
|
|
* @see EOS_Leaderboards_LeaderboardRecord_Release
|
|
*
|
|
* @return EOS_Success if the leaderboard record is available and passed out in OutLeaderboardRecord
|
|
* EOS_InvalidParameters if you pass a null pointer for the out parameter
|
|
* EOS_NotFound if the leaderboard data is not found
|
|
*/
|
|
EOS_DECLARE_FUNC(EOS_EResult) EOS_Leaderboards_CopyLeaderboardRecordByUserId(EOS_HLeaderboards Handle, const EOS_Leaderboards_CopyLeaderboardRecordByUserIdOptions* Options, EOS_Leaderboards_LeaderboardRecord ** OutLeaderboardRecord);
|
|
|
|
/**
|
|
* Query for a list of scores for a given list of users.
|
|
*
|
|
* @param Options Structure containing information about the users whose scores we're retrieving.
|
|
* @param ClientData Arbitrary data that is passed back to you in the CompletionDelegate.
|
|
* @param CompletionDelegate This function is called when the query operation completes.
|
|
*
|
|
* @return EOS_Success if the operation completes successfully
|
|
* EOS_InvalidParameters if any of the options are incorrect
|
|
*/
|
|
EOS_DECLARE_FUNC(void) EOS_Leaderboards_QueryLeaderboardUserScores(EOS_HLeaderboards Handle, const EOS_Leaderboards_QueryLeaderboardUserScoresOptions* Options, void* ClientData, const EOS_Leaderboards_OnQueryLeaderboardUserScoresCompleteCallback CompletionDelegate);
|
|
|
|
/**
|
|
* Fetch the number of leaderboard user scores that are cached locally.
|
|
*
|
|
* @param Options The Options associated with retrieving the leaderboard user scores count.
|
|
*
|
|
* @see EOS_Leaderboards_CopyLeaderboardUserScoreByIndex
|
|
* @see EOS_Leaderboards_CopyLeaderboardUserScoreByUserId
|
|
*
|
|
* @return Number of leaderboard records or 0 if there is an error
|
|
*/
|
|
EOS_DECLARE_FUNC(uint32_t) EOS_Leaderboards_GetLeaderboardUserScoreCount(EOS_HLeaderboards Handle, const EOS_Leaderboards_GetLeaderboardUserScoreCountOptions* Options);
|
|
|
|
/**
|
|
* Fetches leaderboard user score from a given index.
|
|
*
|
|
* @param Options Structure containing the index being accessed.
|
|
* @param OutLeaderboardUserScore The leaderboard user score for the given index, if it exists and is valid, use EOS_Leaderboards_LeaderboardUserScore_Release when finished.
|
|
*
|
|
* @see EOS_Leaderboards_LeaderboardUserScore_Release
|
|
*
|
|
* @return EOS_Success if the leaderboard scores are available and passed out in OutLeaderboardUserScore
|
|
* EOS_InvalidParameters if you pass a null pointer for the out parameter
|
|
* EOS_NotFound if the leaderboard user scores are not found
|
|
*/
|
|
EOS_DECLARE_FUNC(EOS_EResult) EOS_Leaderboards_CopyLeaderboardUserScoreByIndex(EOS_HLeaderboards Handle, const EOS_Leaderboards_CopyLeaderboardUserScoreByIndexOptions* Options, EOS_Leaderboards_LeaderboardUserScore ** OutLeaderboardUserScore);
|
|
|
|
/**
|
|
* Fetches leaderboard user score from a given user ID.
|
|
*
|
|
* @param Options Structure containing the user ID being accessed.
|
|
* @param OutLeaderboardUserScore The leaderboard user score for the given user ID, if it exists and is valid, use EOS_Leaderboards_LeaderboardUserScore_Release when finished.
|
|
*
|
|
* @see EOS_Leaderboards_LeaderboardUserScore_Release
|
|
*
|
|
* @return EOS_Success if the leaderboard scores are available and passed out in OutLeaderboardUserScore
|
|
* EOS_InvalidParameters if you pass a null pointer for the out parameter
|
|
* EOS_NotFound if the leaderboard user scores are not found
|
|
*/
|
|
EOS_DECLARE_FUNC(EOS_EResult) EOS_Leaderboards_CopyLeaderboardUserScoreByUserId(EOS_HLeaderboards Handle, const EOS_Leaderboards_CopyLeaderboardUserScoreByUserIdOptions* Options, EOS_Leaderboards_LeaderboardUserScore ** OutLeaderboardUserScore);
|