Files
UnrealEngineUWP/Engine/Source/Programs/Shared/EpicGames.BuildGraph/BgOption.cs
Ben Marsh a59ef99c07 BuildGraph: New mechanism for declaring graphs using C# code (WIP).
Nodes can now be implemented by arbitary C# methods. Graph structure is specified through expression trees implemented using Bg* types, which are not substituted with values until execution time. Doing so allows determination of node and option dependencies for a particular target, allowing us to generate dynamic UI for presenting relevant settings to the user.

Includes partial implementation of Installed Build script as an example implementation.

#preflight 61bb85d46c2686e86322eec9

[CL 18477305 by Ben Marsh in ue5-main branch]
2021-12-16 13:55:22 -05:00

52 lines
1.2 KiB
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using System;
using System.Collections.Generic;
using System.Text;
namespace EpicGames.BuildGraph
{
/// <summary>
/// Represents a graph option. These are expanded during preprocessing, but are retained in order to display help messages.
/// </summary>
public class BgOption
{
/// <summary>
/// Name of this option
/// </summary>
public string Name;
/// <summary>
/// Description for this option
/// </summary>
public string Description;
/// <summary>
/// Default value for this option
/// </summary>
public string DefaultValue;
/// <summary>
/// Constructor
/// </summary>
/// <param name="Name">The name of this option</param>
/// <param name="Description">Description of the option, for display on help pages</param>
/// <param name="DefaultValue">Default value for the option</param>
public BgOption(string Name, string Description, string DefaultValue)
{
this.Name = Name;
this.Description = Description;
this.DefaultValue = DefaultValue;
}
/// <summary>
/// Returns a name of this option for debugging
/// </summary>
/// <returns>Name of the option</returns>
public override string ToString()
{
return Name;
}
}
}