// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
namespace Microsoft.MixedReality.Toolkit.Diagnostics
{
///
/// The interface contract that defines the Diagnostics system in the Mixed Reality Toolkit
///
public interface IMixedRealityDiagnosticsSystem : IMixedRealityEventSystem, IMixedRealityEventSource
{
///
/// Typed representation of the ConfigurationProfile property.
///
MixedRealityDiagnosticsProfile DiagnosticsSystemProfile { get; }
///
/// Enable / disable diagnostic display.
///
///
/// When set to true, visibility settings for individual diagnostics are honored. When set to false,
/// all visualizations are hidden.
///
bool ShowDiagnostics { get; set; }
///
/// Enable / disable the profiler display.
///
bool ShowProfiler { get; set; }
///
/// Show or hide the frame info (per frame stats).
///
bool ShowFrameInfo { get; set; }
///
/// Show or hide the memory stats (used, peak, and limit).
///
bool ShowMemoryStats { get; set; }
///
/// The amount of time, in seconds, to collect frames for frame rate calculation.
///
float FrameSampleRate { get; }
}
}