Files
GTASource/game/Core/IUserEntitlementDataProvider.h
expvintl 419f2e4752 init
2025-02-23 17:40:52 +08:00

38 lines
1.3 KiB
C++

/////////////////////////////////////////////////////////////////////////////////
//
// FILE : IUserEntitlementDataProvider.h
// PURPOSE : Interface for per-platform user entitlement requests
//
// AUTHOR : stephen.phillips
// STARTED : February 2021
//
/////////////////////////////////////////////////////////////////////////////////
#ifndef CORE_I_USER_ENTITLEMENT_DATA_PROVIDER
#define CORE_I_USER_ENTITLEMENT_DATA_PROVIDER
#include "Core/UserEntitlementDefs.h"
namespace rage
{
class netStatus;
}
class IUserEntitlementDataProvider
{
public:
virtual ~IUserEntitlementDataProvider() { }
//PURPOSE: Check if it is necessary to request updated entitlements,
// e.g. the player has signed in since we last queried entitlements.
virtual bool AreEntitlementsUpToDate() const = 0;
//PURPOSE: Create network request for entitlements if not already up to date.
//PARAMS: out_entitlements - entitlements data to be populated when the data request is complete or up to date.
// out_status - data request status to determine when the request is complete.
//RETURN: Was the data request created successfully or already up to date.
virtual bool RequestEntitlements(const UserEntitlements*& out_entitlements, const rage::netStatus*& out_status) = 0;
};
#endif // CORE_I_USER_ENTITLEMENT_DATA_PROVIDER