# IAdaptivePerformance

> The main interface to access Adaptive Performance. None of the properties in this interface change after startup. This means the references returned by the properties may be cached by the user.

## Definition

* **Type:** Interface
* **Namespace:** [UnityEngine.AdaptivePerformance](/engine/6000.7/script-reference/unityengine/adaptiveperformance.md)
* **Assembly:** UnityEngine.AdaptivePerformanceModule

```csharp
public interface IAdaptivePerformance
```

## Properties

| Property                                                                                                                                     | Description                                                                                                                                                                                                                     |
| -------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Active](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/active.md)                                     | Returns true if Adaptive Performance was initialized and is actively running, false otherwise. This means that Adaptive Performance is enabled in StartupSettings.                                                              |
| [DevelopmentSettings](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/developmentsettings.md)           | Access to development (logging) settings.                                                                                                                                                                                       |
| [DevicePerformanceControl](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/deviceperformancecontrol.md) | Control CPU and GPU performance of the device.                                                                                                                                                                                  |
| [Indexer](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/indexer.md)                                   | Access to the Indexer system. See [AdaptivePerformanceIndexer](/engine/6000.7/script-reference/unityengine/adaptiveperformance/adaptiveperformanceindexer.md)                                                                   |
| [Initialized](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/initialized.md)                           | Returns true if Adaptive Performance was initialized successfully, false otherwise. This means that Adaptive Performance is enabled in StartupSettings and the application runs on a device that supports Adaptive Performance. |
| [OperationModeStatus](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/operationmodestatus.md)           | Access to the active operation mode.                                                                                                                                                                                            |
| [PerformanceModeStatus](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/performancemodestatus.md)       | Access performance mode status information of the device.                                                                                                                                                                       |
| [PerformanceStatus](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/performancestatus.md)               | Access performance status information of the device and your application.                                                                                                                                                       |
| [Settings](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/settings.md)                                 | Access to the Settings. See [IAdaptivePerformanceSettings](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformancesettings.md).                                                                    |
| [Subsystem](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/subsystem.md)                               | Access to the active Subsystem. See [AdaptivePerformanceSubsystem](/engine/6000.7/script-reference/unityengine/adaptiveperformance/provider/adaptiveperformancesubsystem.md).                                                   |
| [ThermalStatus](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/thermalstatus.md)                       | Access thermal status information of the device.                                                                                                                                                                                |

## Methods

| Method                                                                                                                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [DeinitializeAdaptivePerformance](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/deinitializeadaptiveperformance.md) | Stops Adaptive Performance (if still running) and initiates the tear down process. When this completes successfully, [IAdaptivePerformance.Initialized](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/initialized.md) will be `false`.                                                                                                                                                                                                                                                     |
| [InitializeAdaptivePerformance](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/initializeadaptiveperformance.md)     | Initiates the initialization process for Adaptive Performance by attempting to initialize the loaders. When this completes successfully, [IAdaptivePerformance.Initialized](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/initialized.md) will be `true`. Adaptive Performance can now be started by calling the [IAdaptivePerformance.StartAdaptivePerformance](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/startadaptiveperformance.md) method. |
| [StartAdaptivePerformance](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/startadaptiveperformance.md)               | Attempts to start Adaptive Performance by requesting the active loader and all subsystems to start. When this completes successfully, [IAdaptivePerformance.Active](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/active.md) will be `true`.                                                                                                                                                                                                                                               |
| [StopAdaptivePerformance](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/stopadaptiveperformance.md)                 | Attempts to stop Adaptive Performance by requesting the active loader and all subsystems to stop. When this completes successfully, [IAdaptivePerformance.Active](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/active.md) will be `false`.                                                                                                                                                                                                                                                |
| [SupportedFeature](/engine/6000.7/script-reference/unityengine/adaptiveperformance/iadaptiveperformance/supportedfeature.md)                               | List of supported Features by the loaded provider. See [Feature](/engine/6000.7/script-reference/unityengine/adaptiveperformance/provider/feature.md).                                                                                                                                                                                                                                                                                                                                                                            |
