void OnBoostModeEvent(PerformanceBoostChangeEventArgs ev) { if (!ev.CpuBoost || !ev.GpuBoost) { LogResult(); } }
public IEnumerator PerformanceBoostChangeEvent_Works() { var subsystem = AdaptivePerformanceGeneralSettings.Instance.Manager.activeLoader.GetLoadedSubsystem <SimulatorAdaptivePerformanceSubsystem>(); var ap = Holder.Instance; var ctrl = ap.DevicePerformanceControl; var ps = ap.PerformanceStatus; ctrl.CpuPerformanceBoost = true; ctrl.GpuPerformanceBoost = true; yield return(null); Assert.AreEqual(false, ps.PerformanceMetrics.CpuPerformanceBoost); Assert.AreEqual(false, ps.PerformanceMetrics.GpuPerformanceBoost); yield return(null); Assert.AreEqual(true, ps.PerformanceMetrics.CpuPerformanceBoost); Assert.AreEqual(true, ps.PerformanceMetrics.GpuPerformanceBoost); var eventArgs = new PerformanceBoostChangeEventArgs(); PerformanceBoostChangeHandler eventHandler = delegate(PerformanceBoostChangeEventArgs args) { eventArgs = args; }; ps.PerformanceBoostChangeEvent += eventHandler; yield return(null); // Samsung Subsystem would do this when "timeout" happens (enableBoost changes to no boost after 15 sec) subsystem.GpuPerformanceBoost = false; subsystem.CpuPerformanceBoost = false; Assert.AreEqual(true, ps.PerformanceMetrics.CpuPerformanceBoost); Assert.AreEqual(false, eventArgs.CpuBoost); Assert.AreEqual(true, ps.PerformanceMetrics.GpuPerformanceBoost); Assert.AreEqual(false, eventArgs.GpuBoost); yield return(null); Assert.AreEqual(false, ps.PerformanceMetrics.CpuPerformanceBoost); Assert.AreEqual(false, eventArgs.CpuBoost); Assert.AreEqual(false, ps.PerformanceMetrics.GpuPerformanceBoost); Assert.AreEqual(false, eventArgs.GpuBoost); }
void OnBoostModeEvent(PerformanceBoostChangeEventArgs ev) { DisableAllBoostModes(); if (ev.CpuBoost) { Activate(CPUBoost); } else { Activate(CPUNoBoost); } if (ev.GpuBoost) { Activate(GPUBoost); } else { Activate(GPUNoBoost); } }