Class SimulatorAdaptivePerformanceSubsystem.SimulatorProvider
The Simulator Provider controls Subsystems needed to access Adaptive Performance features and the systems lifecycle.
Inheritance
Inherited Members
Namespace: UnityEditor .AdaptivePerformance .Simulator.Editor
Assembly: Unity.AdaptivePerformance.Simulator.Editor.dll
Syntax
public class SimulatorAdaptivePerformanceSubsystem.SimulatorProvider : AdaptivePerformanceSubsystem.APProvider, IApplicationLifecycle, IDevicePerformanceLevelControl
Constructors
SimulatorProvider()
Main constructor, used to initialize the provider capabilities.
Declaration
public SimulatorProvider()
Properties
AcceptsPerformanceLevel
Required to simulate performance changes. To change AutomaticPerformanceControl, you have to set AcceptsPerformanceLevel to true
. See Performance
Declaration
public virtual bool AcceptsPerformanceLevel { get; set; }
Property Value
Type | Description |
---|---|
bool |
ApplicationLifecycle
Returns the application lifecycle.
Declaration
public override IApplicationLifecycle ApplicationLifecycle { get; }
Property Value
Type | Description |
---|---|
IApplication |
Overrides
Capabilities
Returns the capabilities of the provider.
Declaration
public override Feature Capabilities { get; set; }
Property Value
Type | Description |
---|---|
Feature |
Overrides
ChangeFlags
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Change
Declaration
public virtual Feature ChangeFlags { get; set; }
Property Value
Type | Description |
---|---|
Feature |
CpuPerformanceBoost
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Cpu
Declaration
public virtual bool CpuPerformanceBoost { get; set; }
Property Value
Type | Description |
---|---|
bool |
CpuPerformanceLevel
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Cpu
Declaration
public virtual int CpuPerformanceLevel { get; set; }
Property Value
Type | Description |
---|---|
int |
GpuPerformanceBoost
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Gpu
Declaration
public virtual bool GpuPerformanceBoost { get; set; }
Property Value
Type | Description |
---|---|
bool |
GpuPerformanceLevel
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Gpu
Declaration
public virtual int GpuPerformanceLevel { get; set; }
Property Value
Type | Description |
---|---|
int |
Initialized
Returns the initialization status of the system.
Declaration
public override bool Initialized { get; set; }
Property Value
Type | Description |
---|---|
bool |
Overrides
MaxCpuPerformanceLevel
Declaration
public int MaxCpuPerformanceLevel { get; }
Property Value
Type | Description |
---|---|
int |
MaxGpuPerformanceLevel
Declaration
public int MaxGpuPerformanceLevel { get; }
Property Value
Type | Description |
---|---|
int |
NextCpuFrameTime
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Cpu
Declaration
public virtual float NextCpuFrameTime { get; set; }
Property Value
Type | Description |
---|---|
float |
NextGpuFrameTime
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Gpu
Declaration
public virtual float NextGpuFrameTime { get; set; }
Property Value
Type | Description |
---|---|
float |
NextOverallFrameTime
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Overall
Declaration
public virtual float NextOverallFrameTime { get; set; }
Property Value
Type | Description |
---|---|
float |
PerformanceLevelControl
Returns the performance level control.
Declaration
public override IDevicePerformanceLevelControl PerformanceLevelControl { get; }
Property Value
Type | Description |
---|---|
IDevice |
Overrides
PerformanceMode
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Performance
Declaration
public virtual PerformanceMode PerformanceMode { get; set; }
Property Value
Type | Description |
---|---|
Performance |
Stats
Returns the stats of the provider.
Declaration
public override string Stats { get; }
Property Value
Type | Description |
---|---|
string |
Overrides
TemperatureLevel
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Temperature
Declaration
public virtual float TemperatureLevel { get; set; }
Property Value
Type | Description |
---|---|
float |
TemperatureTrend
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Temperature
Declaration
public virtual float TemperatureTrend { get; set; }
Property Value
Type | Description |
---|---|
float |
Version
The current version of the Device Simulator Adaptive Performance Subsystem. Matches the version of the Adaptive Performance Subsystem. See Version.
Declaration
public override Version Version { get; }
Property Value
Type | Description |
---|---|
Version |
Overrides
WarningLevel
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see Warning
Declaration
public virtual WarningLevel WarningLevel { get; set; }
Property Value
Type | Description |
---|---|
Warning |
Methods
ApplicationPause()
Callback that is called when the application goes into a pause state.
Declaration
public void ApplicationPause()
ApplicationResume()
Callback that is called when the application resumes after being paused.
Declaration
public void ApplicationResume()
Destroy()
Cleanup when the subsystem object is destroyed.
Declaration
public override void Destroy()
Overrides
EnableCpuBoost()
Enable the boost mode for the CPU.
Declaration
public bool EnableCpuBoost()
Returns
Type | Description |
---|---|
bool | Returns if CPU boost mode was successfully enabled. |
EnableGpuBoost()
Enable the boost mode for the GPU.
Declaration
public bool EnableGpuBoost()
Returns
Type | Description |
---|---|
bool | Returns if GPU boost mode was successfully enabled. |
SetClusterInfo(ClusterInfo)
Helper for the device simulator to change cluster info settings. Those settings are usually changed by a device directly.
Declaration
public virtual void SetClusterInfo(ClusterInfo clusterInfo)
Parameters
Type | Name | Description |
---|---|---|
Cluster |
clusterInfo | New Cluster Info values. |
SetPerformanceLevel(ref int, ref int)
Set the performance level for both the CPU and GPU.
Declaration
public bool SetPerformanceLevel(ref int cpuLevel, ref int gpuLevel)
Parameters
Type | Name | Description |
---|---|---|
int | cpuLevel | The CPU performance level to request. |
int | gpuLevel | The GPU performance level to request. |
Returns
Type | Description |
---|---|
bool | Returns if the levels were successfully set. |
Start()
Perform initialization of the subsystem.
Declaration
public override void Start()
Overrides
Stop()
Stop running the subsystem.
Declaration
public override void Stop()
Overrides
TryInitialize()
Simulator subsystem try to initialize initializes successfully.
Declaration
protected override bool TryInitialize()
Returns
Type | Description |
---|---|
bool | true if initialized |
Overrides
Update()
Update current results and flags.
Declaration
public override PerformanceDataRecord Update()
Returns
Type | Description |
---|---|
Performance |
The latest PerformanceDataRecord object. |