// Copyright Epic Games, Inc. All Rights Reserved.
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using EpicGame;
using Gauntlet;
namespace AutomatedPerfTest
{
public class AutomatedPerfTestConfigBase : UnrealTestConfiguration
{
///
/// If we're running on the build machine
///
[AutoParamWithNames(false, "AutomatedPerfTest.IsBuildMachine")]
public bool IsBuildMachine;
///
/// Name of the test, useful for identifying it later
///
[AutoParamWithNames("AutomatedPerfTest.TestName")]
public string TestName = "";
///
/// If set, will prepend platform name and use this device profile instead of the default
///
[AutoParamWithNames("AutomatedPerfTest.DeviceProfileOverride")]
public string DeviceProfileOverride = "";
///
/// If we're running on the build machine
///
[AutoParamWithNames(false, "AutomatedPerfTest.DoInsightsTrace")]
public bool DoInsightsTrace;
///
/// Which trace channels to test with
///
[AutoParamWithNames("AutomatedPerfTest.TraceChannels")]
public string TraceChannels = "default,screenshot";
///
/// If we're running on the build machine
///
[AutoParamWithNames(false, "AutomatedPerfTest.DoCSVProfiler")]
public bool DoCSVProfiler;
///
/// If we're running on the build machine
///
[AutoParamWithNames(false, "AutomatedPerfTest.DoFPSChart")]
public bool DoFPSChart;
///
/// Let BuildGraph tell us where we should output the Insights trace after running a test so that we know where to grab it from when we're done
///
[AutoParamWithNames("", "AutomatedPerfTest.PerfCacheRoot")]
public string PerfCacheRoot;
///
/// Which platform we're testing on
///
[AutoParamWithNames("", "AutomatedPerfTest.TestPlatform")]
public string TestPlatform;
///
/// Let BuildGraph tell us where we should output the Insights trace after running a test so that we know where to grab it from when we're done
///
[AutoParamWithNames(false, "AutomatedPerfTest.DoVideoCapture")]
public bool DoVideoCapture;
}
public class AutomatedSequencePerfTestConfig : AutomatedPerfTestConfigBase
{
///
/// Which map to run the test on
///
[AutoParamWithNames("", "AutomatedPerfTest.TestMap")]
public string TestMap;
///
/// Which sequence to run the test with
///
[AutoParamWithNames("", "AutomatedPerfTest.SequencePath")]
public string SequencePath;
}
}