TianoCore EDK2 master
|
#include <Uefi/UefiBaseType.h>
#include <Protocol/GraphicsOutput.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
#include <Library/DebugLib.h>
#include <Library/FrameBufferBltLib.h>
Go to the source code of this file.
Data Structures | |
struct | FRAME_BUFFER_CONFIGURE |
Variables | |
CONST EFI_PIXEL_BITMASK | mRgbPixelMasks |
CONST EFI_PIXEL_BITMASK | mBgrPixelMasks |
FrameBufferBltLib - Library to perform blt operations on a frame buffer.
Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file FrameBufferBltLib.c.
RETURN_STATUS EFIAPI FrameBufferBlt | ( | IN FRAME_BUFFER_CONFIGURE * | Configure, |
IN OUT 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 | ||
) |
Performs a UEFI Graphics Output Protocol Blt operation.
[in] | Configure | Pointer to a configuration which was successfully created by FrameBufferBltConfigure (). |
[in,out] | BltBuffer | The data to transfer to screen. |
[in] | BltOperation | The operation to perform. |
[in] | SourceX | The X coordinate of the source for BltOperation. |
[in] | SourceY | The Y coordinate of the source for BltOperation. |
[in] | DestinationX | The X coordinate of the destination for BltOperation. |
[in] | DestinationY | The Y coordinate of the destination for BltOperation. |
[in] | Width | The width of a rectangle in the blt rectangle in pixels. |
[in] | Height | The height of a rectangle in the blt rectangle in pixels. |
[in] | Delta | Not used for EfiBltVideoFill and EfiBltVideoToVideo operation. If a Delta of 0 is used, the entire BltBuffer will be operated on. If a subrectangle of the BltBuffer is used, then Delta represents the number of bytes in a row of the BltBuffer. |
RETURN_INVALID_PARAMETER | Invalid parameter were passed in. |
RETURN_SUCCESS | The Blt operation was performed successfully. |
Definition at line 670 of file FrameBufferBltLib.c.
RETURN_STATUS EFIAPI FrameBufferBltConfigure | ( | IN VOID * | FrameBuffer, |
IN EFI_GRAPHICS_OUTPUT_MODE_INFORMATION * | FrameBufferInfo, | ||
IN OUT FRAME_BUFFER_CONFIGURE * | Configure, | ||
IN OUT UINTN * | ConfigureSize | ||
) |
Create the configuration for a video frame buffer.
The configuration is returned in the caller provided buffer.
[in] | FrameBuffer | Pointer to the start of the frame buffer. |
[in] | FrameBufferInfo | Describes the frame buffer characteristics. |
[in,out] | Configure | The created configuration information. |
[in,out] | ConfigureSize | Size of the configuration information. |
RETURN_SUCCESS | The configuration was successful created. |
RETURN_BUFFER_TOO_SMALL | The Configure is to too small. The required size is returned in ConfigureSize. |
RETURN_UNSUPPORTED | The requested mode is not supported by this implementaion. |
Definition at line 111 of file FrameBufferBltLib.c.
RETURN_STATUS FrameBufferBltLibBufferToVideo | ( | IN FRAME_BUFFER_CONFIGURE * | Configure, |
IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL * | BltBuffer, | ||
IN UINTN | SourceX, | ||
IN UINTN | SourceY, | ||
IN UINTN | DestinationX, | ||
IN UINTN | DestinationY, | ||
IN UINTN | Width, | ||
IN UINTN | Height, | ||
IN UINTN | Delta | ||
) |
Performs a UEFI Graphics Output Protocol Blt Buffer to Video operation with extended parameters.
[in] | Configure | Pointer to a configuration which was successfully created by FrameBufferBltConfigure (). |
[in] | BltBuffer | Output buffer for pixel color data. |
[in] | SourceX | X location within BltBuffer. |
[in] | SourceY | Y location within BltBuffer. |
[in] | DestinationX | X location within video. |
[in] | DestinationY | Y location within video. |
[in] | Width | Width (in pixels). |
[in] | Height | Height. |
[in] | Delta | Number of bytes in a row of BltBuffer. |
RETURN_INVALID_PARAMETER | Invalid parameter were passed in. |
RETURN_SUCCESS | The Blt operation was performed successfully. |
Definition at line 469 of file FrameBufferBltLib.c.
VOID FrameBufferBltLibConfigurePixelFormat | ( | IN CONST EFI_PIXEL_BITMASK * | BitMask, |
OUT UINT32 * | BytesPerPixel, | ||
OUT INT8 * | PixelShl, | ||
OUT INT8 * | PixelShr | ||
) |
Initialize the bit mask in frame buffer configure.
BitMask | The bit mask of pixel. |
BytesPerPixel | Size in bytes of pixel. |
PixelShl | Left shift array. |
PixelShr | Right shift array. |
Definition at line 47 of file FrameBufferBltLib.c.
EFI_STATUS FrameBufferBltLibVideoFill | ( | IN FRAME_BUFFER_CONFIGURE * | Configure, |
IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL * | Color, | ||
IN UINTN | DestinationX, | ||
IN UINTN | DestinationY, | ||
IN UINTN | Width, | ||
IN UINTN | Height | ||
) |
Performs a UEFI Graphics Output Protocol Blt Video Fill.
[in] | Configure | Pointer to a configuration which was successfully created by FrameBufferBltConfigure (). |
[in] | Color | Color to fill the region with. |
[in] | DestinationX | X location to start fill operation. |
[in] | DestinationY | Y location to start fill operation. |
[in] | Width | Width (in pixels) to fill. |
[in] | Height | Height to fill. |
RETURN_INVALID_PARAMETER | Invalid parameter was passed in. |
RETURN_SUCCESS | The video was filled successfully. |
Definition at line 196 of file FrameBufferBltLib.c.
RETURN_STATUS FrameBufferBltLibVideoToBltBuffer | ( | IN FRAME_BUFFER_CONFIGURE * | Configure, |
OUT EFI_GRAPHICS_OUTPUT_BLT_PIXEL * | BltBuffer, | ||
IN UINTN | SourceX, | ||
IN UINTN | SourceY, | ||
IN UINTN | DestinationX, | ||
IN UINTN | DestinationY, | ||
IN UINTN | Width, | ||
IN UINTN | Height, | ||
IN UINTN | Delta | ||
) |
Performs a UEFI Graphics Output Protocol Blt Video to Buffer operation with extended parameters.
[in] | Configure | Pointer to a configuration which was successfully created by FrameBufferBltConfigure (). |
[out] | BltBuffer | Output buffer for pixel color data. |
[in] | SourceX | X location within video. |
[in] | SourceY | Y location within video. |
[in] | DestinationX | X location within BltBuffer. |
[in] | DestinationY | Y location within BltBuffer. |
[in] | Width | Width (in pixels). |
[in] | Height | Height. |
[in] | Delta | Number of bytes in a row of BltBuffer. |
RETURN_INVALID_PARAMETER | Invalid parameter were passed in. |
RETURN_SUCCESS | The Blt operation was performed successfully. |
Definition at line 361 of file FrameBufferBltLib.c.
RETURN_STATUS FrameBufferBltLibVideoToVideo | ( | IN FRAME_BUFFER_CONFIGURE * | Configure, |
IN UINTN | SourceX, | ||
IN UINTN | SourceY, | ||
IN UINTN | DestinationX, | ||
IN UINTN | DestinationY, | ||
IN UINTN | Width, | ||
IN UINTN | Height | ||
) |
Performs a UEFI Graphics Output Protocol Blt Video to Video operation
[in] | Configure | Pointer to a configuration which was successfully created by FrameBufferBltConfigure (). |
[in] | SourceX | X location within video. |
[in] | SourceY | Y location within video. |
[in] | DestinationX | X location within video. |
[in] | DestinationY | Y location within video. |
[in] | Width | Width (in pixels). |
[in] | Height | Height. |
RETURN_INVALID_PARAMETER | Invalid parameter were passed in. |
RETURN_SUCCESS | The Blt operation was performed successfully. |
Definition at line 572 of file FrameBufferBltLib.c.
CONST EFI_PIXEL_BITMASK mBgrPixelMasks |
Definition at line 34 of file FrameBufferBltLib.c.
CONST EFI_PIXEL_BITMASK mRgbPixelMasks |
Definition at line 30 of file FrameBufferBltLib.c.