A.3.7 GraphicsOutput.c File

Example A-19-Graphics Output Protocol implementation template

/** @file
<<BriefDescription>>
<<DetailedDescription>>
<<Copyright>>
<<License>>
**/
#include "<<DriverName>>.h"
///
/// Graphics Output Protocol Mode structure
///
GLOBAL_REMOVE_IF_UNREFERENCED
EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE g<<DriverName>>GraphicsOutputMode = {
0, // MaxMode
0, // Mode
NULL, // Info
0, // SizeOfInfo
0, // FrameBufferBase
0 // FrameBufferSize
};
///
/// Graphics Output Protocol instance
///
GLOBAL_REMOVE_IF_UNREFERENCED
EFI_GRAPHICS_OUTPUT_PROTOCOL g<<DriverName>>GraphicsOutput = {
<<DriverName>>GraphicsOutputQueryMode,
<<DriverName>>GraphicsOutputSetMode,
<<DriverName>>GraphicsOutputBlt,
&g<<DriverName>>GraphicsOutputMode
};
EFI_STATUS
EFIAPI
<<DriverName>>GraphicsOutputQueryMode (
IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This,
IN UINT32 ModeNumber,
OUT UINTN *SizeOfInfo,
OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **Info
)
{
}
EFI_STATUS
EFIAPI
<<DriverName>>GraphicsOutputSetMode (
IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This,
IN UINT32 ModeNumber
)
{
}
EFI_STATUS
EFIAPI
<<DriverName>>GraphicsOutputBlt (
IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This,
IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer, OPTIONAL
IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation,
IN UINTN SourceX,
IN UINTN SourceY,
IN UINTN DestinationX,
IN UINTN DestinationY,
IN UINTN Width,
IN UINTN Height,
IN UINTN Delta OPTIONAL
)
{
}