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
Syntax
public class 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 PerformanceLevelControlAvailable.
Declaration
public virtual bool AcceptsPerformanceLevel { get; set; }
Property Value
Type | Description |
---|---|
Boolean |
ApplicationLifecycle
Returns the application lifecycle.
Declaration
public override IApplicationLifecycle ApplicationLifecycle { get; }
Property Value
Type | Description |
---|---|
IApplicationLifecycle |
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 ChangeFlags.
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 CpuPerformanceBoost.
Declaration
public virtual bool CpuPerformanceBoost { get; set; }
Property Value
Type | Description |
---|---|
Boolean |
CpuPerformanceLevel
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see CpuPerformanceLevel.
Declaration
public virtual int CpuPerformanceLevel { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
GpuPerformanceBoost
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see GpuPerformanceBoost.
Declaration
public virtual bool GpuPerformanceBoost { get; set; }
Property Value
Type | Description |
---|---|
Boolean |
GpuPerformanceLevel
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see GpuPerformanceLevel.
Declaration
public virtual int GpuPerformanceLevel { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Initialized
Returns the initialization status of the system.
Declaration
public override bool Initialized { get; set; }
Property Value
Type | Description |
---|---|
Boolean |
Overrides
MaxCpuPerformanceLevel
Declaration
public int MaxCpuPerformanceLevel { get; }
Property Value
Type | Description |
---|---|
Int32 |
Implements
MaxGpuPerformanceLevel
Declaration
public int MaxGpuPerformanceLevel { get; }
Property Value
Type | Description |
---|---|
Int32 |
Implements
NextCpuFrameTime
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see CpuFrameTime.
Declaration
public virtual float NextCpuFrameTime { get; set; }
Property Value
Type | Description |
---|---|
Single |
NextGpuFrameTime
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see GpuFrameTime.
Declaration
public virtual float NextGpuFrameTime { get; set; }
Property Value
Type | Description |
---|---|
Single |
NextOverallFrameTime
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see OverallFrameTime.
Declaration
public virtual float NextOverallFrameTime { get; set; }
Property Value
Type | Description |
---|---|
Single |
PerformanceLevelControl
Returns the performance level control.
Declaration
public override IDevicePerformanceLevelControl PerformanceLevelControl { get; }
Property Value
Type | Description |
---|---|
IDevicePerformanceLevelControl |
Overrides
PerformanceMode
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see PerformanceMode.
Declaration
public virtual PerformanceMode PerformanceMode { get; set; }
Property Value
Type | Description |
---|---|
PerformanceMode |
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 TemperatureLevel.
Declaration
public virtual float TemperatureLevel { get; set; }
Property Value
Type | Description |
---|---|
Single |
TemperatureTrend
This property is a wrapper around an internal PerformanceDataRecord object. For more details, see TemperatureTrend.
Declaration
public virtual float TemperatureTrend { get; set; }
Property Value
Type | Description |
---|---|
Single |
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 WarningLevel.
Declaration
public virtual WarningLevel WarningLevel { get; set; }
Property Value
Type | Description |
---|---|
WarningLevel |
Methods
ApplicationPause()
Callback that is called when the application goes into a pause state.
Declaration
public void ApplicationPause()
Implements
ApplicationResume()
Callback that is called when the application resumes after being paused.
Declaration
public void ApplicationResume()
Implements
Destroy()
Cleanup when the subsystem object is destroyed.
Declaration
public override void Destroy()
EnableCpuBoost()
Enable the boost mode for the CPU.
Declaration
public bool EnableCpuBoost()
Returns
Type | Description |
---|---|
Boolean | Returns if CPU boost mode was successfully enabled. |
Implements
EnableGpuBoost()
Enable the boost mode for the GPU.
Declaration
public bool EnableGpuBoost()
Returns
Type | Description |
---|---|
Boolean | Returns if GPU boost mode was successfully enabled. |
Implements
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 |
---|---|---|
ClusterInfo | clusterInfo | New Cluster Info values. |
SetPerformanceLevel(ref Int32, ref Int32)
Set the performance level for both the CPU and GPU.
Declaration
public bool SetPerformanceLevel(ref int cpuLevel, ref int gpuLevel)
Parameters
Type | Name | Description |
---|---|---|
Int32 | cpuLevel | The CPU performance level to request. |
Int32 | gpuLevel | The GPU performance level to request. |
Returns
Type | Description |
---|---|
Boolean | Returns if the levels were successfully set. |
Implements
Start()
Perform initialization of the subsystem.
Declaration
public override void Start()
Stop()
Stop running the subsystem.
Declaration
public override void Stop()
TryInitialize()
Simulator subsystem try to initialize initializes successfully.
Declaration
protected override bool TryInitialize()
Returns
Type | Description |
---|---|
Boolean | true if initialized |
Update()
Update current results and flags.
Declaration
public override PerformanceDataRecord Update()
Returns
Type | Description |
---|---|
PerformanceDataRecord | The latest PerformanceDataRecord object. |