6#include "OnlinePicoSettings.generated.h"
8DECLARE_LOG_CATEGORY_EXTERN(PicoSettings, Log, All);
11enum class ERegionType :uint8
18UCLASS(config = Engine, defaultconfig)
19class ONLINESUBSYSTEMPICO_API UOnlinePicoSettings :
public UObject
21 GENERATED_UCLASS_BODY()
31 FString DefaultPlatformService;
33 FString AndroidPlatformService;
35 UPROPERTY(Config, EditAnywhere, Category = Platform, Meta = (DisplayName = "bEnabled"))
38 UPROPERTY(Config, EditAnywhere, Category = Platform, Meta = (DisplayName = "Region"))
39 ERegionType RegionType;
41 UPROPERTY(Config, EditAnywhere, Category = Platform, Meta = (DisplayName = "AppID"))
44 UPROPERTY(Config, EditAnywhere, Category = Platform, Meta = (DisplayName = "AppKey"))
47 UPROPERTY(Config, EditAnywhere, Category = Platform, Meta = (DisplayName = "Scope"))
51 UPROPERTY(Config, EditAnywhere, Category = Platform, Meta = (DisplayName = "User Entitlement Check", ToolTip = "If selected, you will need to enter the APPID that is obtained from Pico Developer Platform after uploading the app for an entitlement check upon the app launch."))
52 bool bStartTimeEntitlementCheck;
54 UPROPERTY(Config, EditAnywhere, Category = Platform, Meta = (EditCondition = "bStartTimeEntitlementCheck", DisplayName = "EntitlementCheckAppID"))
55 FString EntitlementCheckAppID;
57 UPROPERTY(Config, EditAnywhere, Category = Platform, Meta = (DisplayName = "Entitlement Check Simulation", ToolTip = "If true, Development devices will simulate Entitlement Check, you should enter a valid device SN codes list. The SN code can be obtain in Settings-General-Device serial number or input 'adb devices ' in cmd"))
58 bool bEntitlementCheckSimulation;
60 UPROPERTY(Config, EditAnywhere, Category = Platform, Meta = (EditCondition = "bEntitlementCheckSimulation", DisplayName = "Device SN Code List"))
61 TArray<FString> DeviceSN;
63 virtual
void PostInitProperties() override;
66 UFUNCTION(BlueprintPure, Category = "OVRPlatformBP|OnlineSubsystemOculus")
67 static
void GetOnlinePicoSettings(
bool& OutbIsEnable, ERegionType& OutRegionType, FString& OutAppID, FString& OutAppKey, FString& OutScope,
bool& OutbStartTimeEntitlementCheck, FString& OutEntitlementCheckAppID,
bool& OutbEntitlementCheckSimulation, TArray<FString>& OutDeviceSN);
73 bool ValidateSettings();
76 virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent)
override;