// Copyright Epic Games, Inc. All Rights Reserved. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using EpicGames.Core; using UnrealBuildBase; namespace UnrealBuildTool { /// /// Represents a Mac/IOS framework /// class UEBuildFramework { /// /// The name of this framework /// public readonly string Name; /// /// Path to a zip file containing the framework. May be null. /// public readonly FileReference? ZipFile; /// /// Path to the framework on disk. /// public readonly DirectoryReference? FrameworkDirectory; /// /// /// public readonly string? CopyBundledAssets; /// /// Copy the framework to the target's Framework directory /// public readonly bool bCopyFramework = false; /// /// File created after the framework has been extracted. Used to add dependencies into the action graph. /// public FileItem? ExtractedTokenFile; /// /// Constructor /// /// The framework name /// public UEBuildFramework(string Name, string? CopyBundledAssets = null) { this.Name = Name; this.CopyBundledAssets = CopyBundledAssets; } /// /// Constructor /// /// The framework name /// Path to the zip file for this framework /// Path for the extracted zip file /// /// Copy the framework to the target's Framework directory public UEBuildFramework(string Name, FileReference? ZipFile, DirectoryReference? OutputDirectory, string? CopyBundledAssets, bool bCopyFramework) { this.Name = Name; this.ZipFile = ZipFile; this.FrameworkDirectory = OutputDirectory; this.CopyBundledAssets = CopyBundledAssets; this.bCopyFramework = bCopyFramework; } /// /// Constructor /// /// The framework name /// Path for the framework on disk /// /// Copy the framework to the target's Framework directory public UEBuildFramework(String Name, DirectoryReference? FrameworkDirectory, string? CopyBundledAssets, bool bCopyFramework) { this.Name = Name; this.FrameworkDirectory = FrameworkDirectory; this.CopyBundledAssets = CopyBundledAssets; this.bCopyFramework = bCopyFramework; } } }