A.2.4 DriverHealth.c File

Example A-9-Driver Health Protocol implementation template
/** @file
  <<BriefDescription>>
  <<DetailedDescription>>
  <<Copyright>>
  <<License>>
**/

#include "<<DriverName>>.h"

GLOBAL_REMOVE_IF_UNREFERENCED
EFI_DRIVER_HEALTH_PROTOCOL g<<DriverName>>DriverHealth = {
<<DriverName>>DriverHealthGetHealthStatus,
  <<DriverName>>DriverHealthRepair
};

EFI_STATUS
EFIAPI
<<DriverName>>DriverHealthGetHealthStatus (
  IN  EFI_DRIVER_HEALTH_PROTOCOL               *This,
  IN  EFI_HANDLE                               ControllerHandle,  OPTIONAL
  IN  EFI_HANDLE                               ChildHandle,       OPTIONAL
  OUT EFI_DRIVER_HEALTH_STATUS                 *HealthStatus,
  OUT EFI_DRIVER_HEALTH_HII_MESSAGE            **MessageList,     OPTIONAL
  OUT EFI_HII_HANDLE                           *FormHiiHandle     OPTIONAL
  )
{
  return EFI_UNSUPPORTED;
}

EFI_STATUS
EFIAPI
<<DriverName>>DriverHealthRepair (
  IN EFI_DRIVER_HEALTH_PROTOCOL                *This,
  IN EFI_HANDLE                                ControllerHandle,
  IN EFI_HANDLE                                ChildHandle,           OPTIONAL
  IN EFI_DRIVER_HEALTH_REPAIR_PROGRESS_NOTIFY  ProgressNotification   OPTIONAL
  )
{
  return EFI_UNSUPPORTED;
}