Files
florin pascu 367836ea48 First part of TargetPlatform(TP) refactor into TargetPlatformSettings(TPS) and TargetPlatformControls(TPC)
TPS doesn't need SDK and will be used to get info about the platform
TPC requires SDK
AndroidTP has been converted to the new system
#jira UE-200883
#rb Jack.Porter

[CL 30963885 by florin pascu in ue5-main branch]
2024-01-29 04:50:19 -05:00

69 lines
2.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "CoreMinimal.h"
#include "AndroidTargetPlatformSettings.h"
#include "Modules/ModuleManager.h"
#include "Interfaces/ITargetPlatformModule.h"
#include "Interfaces/ITargetPlatformSettingsModule.h"
#include "Interfaces/ITargetPlatformControlsModule.h"
#include "Android/AndroidPlatformProperties.h"
#include "MultiPlatformTargetReceiptBuildWorkers.h"
#include "IAndroidTargetPlatformSettingsModule.h"
/**
* Module for the Androids target platform settings.
*/
class FAndroidTargetPlatformSettingsModule
: public IAndroidTargetPlatformSettingsModule
{
public:
/** Destructor. */
~FAndroidTargetPlatformSettingsModule()
{
}
public:
virtual void GetTargetPlatforms(TArray<ITargetPlatform*>& TargetPlatforms)
{
}
void GetSinglePlatformSettings(TMap<EAndroidTextureFormatCategory, ITargetPlatformSettings*>& OutMap)
{
OutMap = SinglePlatformSettings;
}
ITargetPlatformSettings* GetMultiPlatformSettings()
{
return MultiTargetPlatformSettings;
}
protected:
virtual void GetTargetPlatformSettings(TArray<ITargetPlatformSettings*>& TargetPlatforms)
{
ITargetPlatformSettings* VanillaTP = new FAndroidTargetPlatformSettings();
TargetPlatforms.Add(VanillaTP);
SinglePlatformSettings.Add(EAndroidTextureFormatCategory::Count, VanillaTP);
ITargetPlatformSettings* DXTTP = new FAndroid_DXTTargetPlatformSettings();
TargetPlatforms.Add(DXTTP);
SinglePlatformSettings.Add(EAndroidTextureFormatCategory::DXT, DXTTP);
ITargetPlatformSettings* ETC2TP = new FAndroid_ETC2TargetPlatformSettings();
TargetPlatforms.Add(ETC2TP);
SinglePlatformSettings.Add(EAndroidTextureFormatCategory::ETC2, ETC2TP);
ITargetPlatformSettings*ASTCTP = new FAndroid_ASTCTargetPlatformSettings();
TargetPlatforms.Add(ASTCTP);
SinglePlatformSettings.Add(EAndroidTextureFormatCategory::ASTC, ASTCTP);
ITargetPlatformSettings* MultiTP = new FAndroid_MultiTargetPlatformSettings();
TargetPlatforms.Add(MultiTP);
MultiTargetPlatformSettings = MultiTP;
}
private:
ITargetPlatformSettings* MultiTargetPlatformSettings;
TMap<EAndroidTextureFormatCategory, ITargetPlatformSettings*> SinglePlatformSettings;
};
IMPLEMENT_MODULE(FAndroidTargetPlatformSettingsModule, AndroidTargetPlatformSettings);