TianoCore EDK2 master
Loading...
Searching...
No Matches
UgaDraw.h File Reference

Go to the source code of this file.

Data Structures

struct  EFI_UGA_PIXEL
 
union  EFI_UGA_PIXEL_UNION
 
struct  _EFI_UGA_DRAW_PROTOCOL
 

Macros

#define EFI_UGA_DRAW_PROTOCOL_GUID
 

Typedefs

typedef struct _EFI_UGA_DRAW_PROTOCOL EFI_UGA_DRAW_PROTOCOL
 
typedef EFI_STATUS(EFIAPI * EFI_UGA_DRAW_PROTOCOL_GET_MODE) (IN EFI_UGA_DRAW_PROTOCOL *This, OUT UINT32 *HorizontalResolution, OUT UINT32 *VerticalResolution, OUT UINT32 *ColorDepth, OUT UINT32 *RefreshRate)
 
typedef EFI_STATUS(EFIAPI * EFI_UGA_DRAW_PROTOCOL_SET_MODE) (IN EFI_UGA_DRAW_PROTOCOL *This, IN UINT32 HorizontalResolution, IN UINT32 VerticalResolution, IN UINT32 ColorDepth, IN UINT32 RefreshRate)
 
typedef EFI_STATUS(EFIAPI * EFI_UGA_DRAW_PROTOCOL_BLT) (IN EFI_UGA_DRAW_PROTOCOL *This, IN EFI_UGA_PIXEL *BltBuffer OPTIONAL, IN EFI_UGA_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)
 

Enumerations

enum  EFI_UGA_BLT_OPERATION {
  EfiUgaVideoFill , EfiUgaVideoToBltBuffer , EfiUgaBltBufferToVideo , EfiUgaVideoToVideo ,
  EfiUgaBltMax
}
 

Variables

EFI_GUID gEfiUgaDrawProtocolGuid
 

Detailed Description

UGA Draw protocol from the EFI 1.10 specification.

Abstraction of a very simple graphics device.

Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file UgaDraw.h.

Macro Definition Documentation

◆ EFI_UGA_DRAW_PROTOCOL_GUID

#define EFI_UGA_DRAW_PROTOCOL_GUID
Value:
{ \
0x982c298b, 0xf4fa, 0x41cb, {0xb8, 0x38, 0x77, 0xaa, 0x68, 0x8f, 0xb8, 0x39 } \
}

Definition at line 14 of file UgaDraw.h.

Typedef Documentation

◆ EFI_UGA_DRAW_PROTOCOL

Definition at line 19 of file UgaDraw.h.

◆ EFI_UGA_DRAW_PROTOCOL_BLT

typedef EFI_STATUS(EFIAPI * EFI_UGA_DRAW_PROTOCOL_BLT) (IN EFI_UGA_DRAW_PROTOCOL *This, IN EFI_UGA_PIXEL *BltBuffer OPTIONAL, IN EFI_UGA_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)

Blt a rectangle of pixels on the graphics screen.

Parameters
[in]This- Protocol instance pointer.
[in]BltBuffer- Buffer containing data to blit into video buffer. This buffer has a size of Width*Height*sizeof(EFI_UGA_PIXEL)
[in]BltOperation- Operation to perform on BlitBuffer and video memory
[in]SourceX- X coordinate of source for the BltBuffer.
[in]SourceY- Y coordinate of source for the BltBuffer.
[in]DestinationX- X coordinate of destination for the BltBuffer.
[in]DestinationY- Y coordinate of destination for the BltBuffer.
[in]Width- Width of rectangle in BltBuffer in pixels.
[in]Height- Hight of rectangle in BltBuffer in pixels.
[in]Delta- OPTIONAL
Return values
EFI_SUCCESS- The Blt operation completed.
EFI_INVALID_PARAMETER- BltOperation is not valid.
EFI_DEVICE_ERROR- A hardware error occurred writting to the video buffer.

Definition at line 133 of file UgaDraw.h.

◆ EFI_UGA_DRAW_PROTOCOL_GET_MODE

typedef EFI_STATUS(EFIAPI * EFI_UGA_DRAW_PROTOCOL_GET_MODE) (IN EFI_UGA_DRAW_PROTOCOL *This, OUT UINT32 *HorizontalResolution, OUT UINT32 *VerticalResolution, OUT UINT32 *ColorDepth, OUT UINT32 *RefreshRate)

Return the current video mode information.

Parameters
ThisThe EFI_UGA_DRAW_PROTOCOL instance.
HorizontalResolutionThe size of video screen in pixels in the X dimension.
VerticalResolutionThe size of video screen in pixels in the Y dimension.
ColorDepthNumber of bits per pixel, currently defined to be 32.
RefreshRateThe refresh rate of the monitor in Hertz.
Return values
EFI_SUCCESSMode information returned.
EFI_NOT_STARTEDVideo display is not initialized. Call SetMode ()
EFI_INVALID_PARAMETEROne of the input args was NULL.

Definition at line 36 of file UgaDraw.h.

◆ EFI_UGA_DRAW_PROTOCOL_SET_MODE

typedef EFI_STATUS(EFIAPI * EFI_UGA_DRAW_PROTOCOL_SET_MODE) (IN EFI_UGA_DRAW_PROTOCOL *This, IN UINT32 HorizontalResolution, IN UINT32 VerticalResolution, IN UINT32 ColorDepth, IN UINT32 RefreshRate)

Set the current video mode information.

Parameters
ThisThe EFI_UGA_DRAW_PROTOCOL instance.
HorizontalResolutionThe size of video screen in pixels in the X dimension.
VerticalResolutionThe size of video screen in pixels in the Y dimension.
ColorDepthNumber of bits per pixel, currently defined to be 32.
RefreshRateThe refresh rate of the monitor in Hertz.
Return values
EFI_SUCCESSMode information returned.
EFI_NOT_STARTEDVideo display is not initialized. Call SetMode ()

Definition at line 59 of file UgaDraw.h.

Enumeration Type Documentation

◆ EFI_UGA_BLT_OPERATION

Enumration value for actions of Blt operations.

Enumerator
EfiUgaVideoFill 

Write data from the BltBuffer pixel (SourceX, SourceY) directly to every pixel of the video display rectangle (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). Only one pixel will be used from the BltBuffer. Delta is NOT used.

EfiUgaVideoToBltBuffer 

Read data from the video display rectangle (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in the BltBuffer rectangle (DestinationX, DestinationY ) (DestinationX + Width, DestinationY + Height). If DestinationX or DestinationY is not zero then Delta must be set to the length in bytes of a row in the BltBuffer.

EfiUgaBltBufferToVideo 

Write data from the BltBuffer rectangle (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the video display rectangle (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is not zero then Delta must be set to the length in bytes of a row in the BltBuffer.

EfiUgaVideoToVideo 

Copy from the video display rectangle (SourceX, SourceY) (SourceX + Width, SourceY + Height) .to the video display rectangle (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). The BltBuffer and Delta are not used in this mode.

EfiUgaBltMax 

Maxmimum value for enumration value of Blt operation. If a Blt operation larger or equal to this enumration value, it is invalid.

Definition at line 83 of file UgaDraw.h.