* Minor IHardware doc fixes * Add XML with documentation to NuGet and output * Update Software namespace docs * Update some internal classes * Update main Computer class docs * Update interfaces docs * Update Computer class documentation * Update motherboard docs * Update hardware docs * Fix code formatting * Update SensorVisitor handler doc
102 lines
5.0 KiB
C#
102 lines
5.0 KiB
C#
// This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
|
|
// If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
// Copyright (C) LibreHardwareMonitor and Contributors.
|
|
// Partial Copyright (C) Michael Möller <mmoeller@openhardwaremonitor.org> and Contributors.
|
|
// All Rights Reserved.
|
|
|
|
using System.Collections.Generic;
|
|
|
|
namespace LibreHardwareMonitor.Hardware
|
|
{
|
|
/// <summary>
|
|
/// Handler that will trigger the actions assigned to it when the event occurs.
|
|
/// </summary>
|
|
/// <param name="hardware">Component returned to the assigned action(s).</param>
|
|
public delegate void HardwareEventHandler(IHardware hardware);
|
|
|
|
/// <summary>
|
|
/// Basic abstract with methods for the class which can store all hardware and decides which devices are to be checked and updated.
|
|
/// </summary>
|
|
public interface IComputer : IElement
|
|
{
|
|
/// <summary>
|
|
/// Gets or sets a value indicating whether collecting information about <see cref="HardwareType.Cpu"/> devices should be enabled and updated.
|
|
/// </summary>
|
|
/// <returns><see langword="true"/> if a given category of devices is already enabled.</returns>
|
|
bool IsCpuEnabled { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets a value indicating whether collecting information about:
|
|
/// <list>
|
|
/// <item><see cref="LibreHardwareMonitor.Hardware.Controller.TBalancer.TBalancerGroup"/></item>
|
|
/// <item><see cref="LibreHardwareMonitor.Hardware.Controller.Heatmaster.HeatmasterGroup"/></item>
|
|
/// <item><see cref="LibreHardwareMonitor.Hardware.Controller.AquaComputer.AquaComputerGroup"/></item>
|
|
/// <item><see cref="LibreHardwareMonitor.Hardware.Controller.AeroCool.AeroCoolGroup"/></item>
|
|
/// <item><see cref="LibreHardwareMonitor.Hardware.Controller.Nzxt.NzxtGroup"/></item>
|
|
/// </list>
|
|
/// devices should be enabled and updated.
|
|
/// </summary>
|
|
/// <returns><see langword="true"/> if a given category of devices is already enabled.</returns>
|
|
bool IsControllerEnabled { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets a value indicating whether collecting information about <see cref="HardwareType.GpuAmd"/> or <see cref="HardwareType.GpuNvidia"/> devices should be enabled and updated.
|
|
/// </summary>
|
|
/// <returns><see langword="true"/> if a given category of devices is already enabled.</returns>
|
|
bool IsGpuEnabled { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets a value indicating whether collecting information about <see cref="HardwareType.Storage"/> devices should be enabled and updated.
|
|
/// </summary>
|
|
/// <returns><see langword="true"/> if a given category of devices is already enabled.</returns>
|
|
bool IsStorageEnabled { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets a value indicating whether collecting information about <see cref="HardwareType.Motherboard"/> devices should be enabled and updated.
|
|
/// </summary>
|
|
/// <returns><see langword="true"/> if a given category of devices is already enabled.</returns>
|
|
bool IsMotherboardEnabled { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets a value indicating whether collecting information about <see cref="HardwareType.Network"/> devices should be enabled and updated.
|
|
/// </summary>
|
|
/// <returns><see langword="true"/> if a given category of devices is already enabled.</returns>
|
|
bool IsNetworkEnabled { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets a value indicating whether collecting information about <see cref="HardwareType.Memory"/> devices should be enabled and updated.
|
|
/// </summary>
|
|
/// <returns><see langword="true"/> if a given category of devices is already enabled.</returns>
|
|
bool IsMemoryEnabled { get; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets a value indicating whether collecting information about <see cref="HardwareType.Psu"/> devices should be enabled and updated.
|
|
/// </summary>
|
|
/// <returns><see langword="true"/> if a given category of devices is already enabled.</returns>
|
|
bool IsPsuEnabled { get; }
|
|
|
|
/// <summary>
|
|
/// Gets a list of all known <see cref="IHardware"/>.
|
|
/// <para>Can be updated by <see cref="IVisitor"/>.</para>
|
|
/// </summary>
|
|
/// <returns>List of all enabled devices.</returns>
|
|
IList<IHardware> Hardware { get; }
|
|
|
|
/// <summary>
|
|
/// Triggered when a new <see cref="IHardware"/> is registered.
|
|
/// </summary>
|
|
event HardwareEventHandler HardwareAdded;
|
|
|
|
/// <summary>
|
|
/// Triggered when a <see cref="IHardware"/> is removed.
|
|
/// </summary>
|
|
event HardwareEventHandler HardwareRemoved;
|
|
|
|
/// <summary>
|
|
/// Generates full LibreHardwareMonitor report for devices that have been enabled.
|
|
/// </summary>
|
|
/// <returns>A formatted text string with library, OS and hardware information.</returns>
|
|
string GetReport();
|
|
}
|
|
}
|