TianoCore EDK2 master
Loading...
Searching...
No Matches
ConSplitterGraphics.c File Reference
#include "ConSplitter.h"

Go to the source code of this file.

Functions

EFI_STATUS EFIAPI ConSplitterGraphicsOutputQueryMode (IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, IN UINT32 ModeNumber, OUT UINTN *SizeOfInfo, OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **Info)
 
EFI_STATUS EFIAPI ConSplitterGraphicsOutputSetMode (IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, IN UINT32 ModeNumber)
 
EFI_STATUS EFIAPI ConSplitterGraphicsOutputBlt (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)
 
EFI_STATUS EFIAPI ConSplitterUgaDrawGetMode (IN EFI_UGA_DRAW_PROTOCOL *This, OUT UINT32 *HorizontalResolution, OUT UINT32 *VerticalResolution, OUT UINT32 *ColorDepth, OUT UINT32 *RefreshRate)
 
EFI_STATUS EFIAPI ConSplitterUgaDrawSetMode (IN EFI_UGA_DRAW_PROTOCOL *This, IN UINT32 HorizontalResolution, IN UINT32 VerticalResolution, IN UINT32 ColorDepth, IN UINT32 RefreshRate)
 
EFI_STATUS EFIAPI ConSplitterUgaDrawBlt (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)
 
VOID TextOutSetMode (IN TEXT_OUT_SPLITTER_PRIVATE_DATA *Private, IN UINTN ModeNumber)
 

Variables

CHAR16 mCrLfString [3] = { CHAR_CARRIAGE_RETURN, CHAR_LINEFEED, CHAR_NULL }
 

Detailed Description

Support for Graphics output spliter.

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

Definition in file ConSplitterGraphics.c.

Function Documentation

◆ ConSplitterGraphicsOutputBlt()

EFI_STATUS EFIAPI ConSplitterGraphicsOutputBlt ( 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 
)

The following table defines actions for BltOperations.

EfiBltVideoFill - 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. EfiBltVideoToBltBuffer - 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. EfiBltBufferToVideo - 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. EfiBltVideoToVideo - 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.

Parameters
ThisProtocol instance pointer.
BltBufferBuffer containing data to blit into video buffer. This buffer has a size of Width*Height*sizeof(EFI_GRAPHICS_OUTPUT_BLT_PIXEL)
BltOperationOperation to perform on BlitBuffer and video memory
SourceXX coordinate of source for the BltBuffer.
SourceYY coordinate of source for the BltBuffer.
DestinationXX coordinate of destination for the BltBuffer.
DestinationYY coordinate of destination for the BltBuffer.
WidthWidth of rectangle in BltBuffer in pixels.
HeightHight of rectangle in BltBuffer in pixels.
DeltaOPTIONAL.
Return values
EFI_SUCCESSThe Blt operation completed.
EFI_INVALID_PARAMETERBltOperation is not valid.
EFI_DEVICE_ERRORA hardware error occurred writting to the video buffer.

Definition at line 246 of file ConSplitterGraphics.c.

◆ ConSplitterGraphicsOutputQueryMode()

EFI_STATUS EFIAPI ConSplitterGraphicsOutputQueryMode ( IN EFI_GRAPHICS_OUTPUT_PROTOCOL This,
IN UINT32  ModeNumber,
OUT UINTN SizeOfInfo,
OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **  Info 
)

Returns information for an available graphics mode that the graphics device and the set of active video output devices supports.

Parameters
ThisThe EFI_GRAPHICS_OUTPUT_PROTOCOL instance.
ModeNumberThe mode number to return information on.
SizeOfInfoA pointer to the size, in bytes, of the Info buffer.
InfoA pointer to callee allocated buffer that returns information about ModeNumber.
Return values
EFI_SUCCESSMode information returned.
EFI_BUFFER_TOO_SMALLThe Info buffer was too small.
EFI_DEVICE_ERRORA hardware error occurred trying to retrieve the video mode.
EFI_INVALID_PARAMETEROne of the input args was NULL.
EFI_OUT_OF_RESOURCESNo resource available.

Definition at line 32 of file ConSplitterGraphics.c.

◆ ConSplitterGraphicsOutputSetMode()

EFI_STATUS EFIAPI ConSplitterGraphicsOutputSetMode ( IN EFI_GRAPHICS_OUTPUT_PROTOCOL This,
IN UINT32  ModeNumber 
)

Set the video device into the specified mode and clears the visible portions of the output display to black.

Parameters
ThisThe EFI_GRAPHICS_OUTPUT_PROTOCOL instance.
ModeNumberAbstraction that defines the current video mode.
Return values
EFI_SUCCESSThe graphics mode specified by ModeNumber was selected.
EFI_DEVICE_ERRORThe device had an error and could not complete the request.
EFI_UNSUPPORTEDModeNumber is not supported by this device.
EFI_OUT_OF_RESOURCESNo resource available.

Definition at line 105 of file ConSplitterGraphics.c.

◆ ConSplitterUgaDrawBlt()

EFI_STATUS EFIAPI ConSplitterUgaDrawBlt ( 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.

The following table defines actions for BltOperations.

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.

Parameters
ThisProtocol instance pointer.
BltBufferBuffer containing data to blit into video buffer. This buffer has a size of Width*Height*sizeof(EFI_UGA_PIXEL)
BltOperationOperation to perform on BlitBuffer and video memory
SourceXX coordinate of source for the BltBuffer.
SourceYY coordinate of source for the BltBuffer.
DestinationXX coordinate of destination for the BltBuffer.
DestinationYY coordinate of destination for the BltBuffer.
WidthWidth of rectangle in BltBuffer in pixels.
HeightHight of rectangle in BltBuffer in pixels.
DeltaOPTIONAL
Return values
EFI_SUCCESSThe Blt operation completed.
EFI_INVALID_PARAMETERBltOperation is not valid.
EFI_DEVICE_ERRORA hardware error occurred writting to the video buffer.

Definition at line 521 of file ConSplitterGraphics.c.

◆ ConSplitterUgaDrawGetMode()

EFI_STATUS EFIAPI ConSplitterUgaDrawGetMode ( 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 346 of file ConSplitterGraphics.c.

◆ ConSplitterUgaDrawSetMode()

EFI_STATUS EFIAPI ConSplitterUgaDrawSetMode ( 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 ()
EFI_OUT_OF_RESOURCESOut of resources.

Definition at line 393 of file ConSplitterGraphics.c.

◆ TextOutSetMode()

VOID TextOutSetMode ( IN TEXT_OUT_SPLITTER_PRIVATE_DATA Private,
IN UINTN  ModeNumber 
)

Sets the output device(s) to a specified mode.

Parameters
PrivateText Out Splitter pointer.
ModeNumberThe mode number to set.

Definition at line 606 of file ConSplitterGraphics.c.

Variable Documentation

◆ mCrLfString

CHAR16 mCrLfString[3] = { CHAR_CARRIAGE_RETURN, CHAR_LINEFEED, CHAR_NULL }

Definition at line 12 of file ConSplitterGraphics.c.