using System;
using System.Collections.Generic;
using System.Text;
namespace Developpez.Dotnet.System.Providers
{
///
/// Interface décrivant un fournisseur d'informations systèmes en fonction de la plateforme actuelle
///
public interface ISystemInteropProvider
{
///
/// Nom du système d'exploitation
///
string PlatformDisplayedName { get; }
///
/// Version installée de DirectX
///
DirectXVersion DirectXVersion { get; }
///
/// Redémarre le système avec la raison spécifiée
///
/// Raison du redémarrage
/// true si l'opération a été un succès, false sinon
bool Reboot(RebootReason reason);
///
/// Obtients la version actuelle du Framework .NET
///
/// version actuelle du Framework .NET
FrameworkVersion GetFrameworkVersion();
}
///
/// Classe vide par défaut pour tous les sytèmes
///
public class NullSystemProvider : ISystemInteropProvider
{
#region ISystemInteropProvider Membres
///
/// Renvoi le nom du système
///
public virtual string PlatformDisplayedName
{
get { throw new NotImplementedException(); }
}
///
/// Redémarre le système avec la raison spécifiée
///
/// Raison du redémarrage
/// true si le redémarrage a été initialisé, false sinon
public virtual bool Reboot(RebootReason reason)
{
throw new NotImplementedException();
}
///
/// Obtient la version installée du Framework .NET
///
/// Version du Framework
public virtual FrameworkVersion GetFrameworkVersion()
{
throw new NotImplementedException();
}
///
/// Obtient la version détectée de DirectX actuellement installée sur le système
///
/// Valide uniquement sru Windows
public virtual DirectXVersion DirectXVersion
{
get { throw new NotImplementedException(); }
}
#endregion
}
}