using System;
using PepperDash.Core;
namespace PepperDash.Essentials.Core.DeviceInfo
{
///
/// Defines the contract for IDeviceInfoProvider
///
public interface IDeviceInfoProvider:IKeyed
{
///
/// Gets the DeviceInfo
///
DeviceInfo DeviceInfo { get; }
///
/// Event fired when DeviceInfo changes
///
event DeviceInfoChangeHandler DeviceInfoChanged;
///
/// Updates the DeviceInfo
///
void UpdateDeviceInfo();
}
///
/// Delegate for DeviceInfoChangeHandler
///
public delegate void DeviceInfoChangeHandler(IKeyed device, DeviceInfoEventArgs args);
}