MdePkg/Include/Protocol/SimpleTextOut.h File Reference


Data Structures

struct  EFI_SIMPLE_TEXT_OUTPUT_MODE
struct  _EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL

Defines

#define EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL_GUID
#define SIMPLE_TEXT_OUTPUT_PROTOCOL   EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL_GUID
#define BOXDRAW_HORIZONTAL   0x2500
#define BOXDRAW_VERTICAL   0x2502
#define BOXDRAW_DOWN_RIGHT   0x250c
#define BOXDRAW_DOWN_LEFT   0x2510
#define BOXDRAW_UP_RIGHT   0x2514
#define BOXDRAW_UP_LEFT   0x2518
#define BOXDRAW_VERTICAL_RIGHT   0x251c
#define BOXDRAW_VERTICAL_LEFT   0x2524
#define BOXDRAW_DOWN_HORIZONTAL   0x252c
#define BOXDRAW_UP_HORIZONTAL   0x2534
#define BOXDRAW_VERTICAL_HORIZONTAL   0x253c
#define BOXDRAW_DOUBLE_HORIZONTAL   0x2550
#define BOXDRAW_DOUBLE_VERTICAL   0x2551
#define BOXDRAW_DOWN_RIGHT_DOUBLE   0x2552
#define BOXDRAW_DOWN_DOUBLE_RIGHT   0x2553
#define BOXDRAW_DOUBLE_DOWN_RIGHT   0x2554
#define BOXDRAW_DOWN_LEFT_DOUBLE   0x2555
#define BOXDRAW_DOWN_DOUBLE_LEFT   0x2556
#define BOXDRAW_DOUBLE_DOWN_LEFT   0x2557
#define BOXDRAW_UP_RIGHT_DOUBLE   0x2558
#define BOXDRAW_UP_DOUBLE_RIGHT   0x2559
#define BOXDRAW_DOUBLE_UP_RIGHT   0x255a
#define BOXDRAW_UP_LEFT_DOUBLE   0x255b
#define BOXDRAW_UP_DOUBLE_LEFT   0x255c
#define BOXDRAW_DOUBLE_UP_LEFT   0x255d
#define BOXDRAW_VERTICAL_RIGHT_DOUBLE   0x255e
#define BOXDRAW_VERTICAL_DOUBLE_RIGHT   0x255f
#define BOXDRAW_DOUBLE_VERTICAL_RIGHT   0x2560
#define BOXDRAW_VERTICAL_LEFT_DOUBLE   0x2561
#define BOXDRAW_VERTICAL_DOUBLE_LEFT   0x2562
#define BOXDRAW_DOUBLE_VERTICAL_LEFT   0x2563
#define BOXDRAW_DOWN_HORIZONTAL_DOUBLE   0x2564
#define BOXDRAW_DOWN_DOUBLE_HORIZONTAL   0x2565
#define BOXDRAW_DOUBLE_DOWN_HORIZONTAL   0x2566
#define BOXDRAW_UP_HORIZONTAL_DOUBLE   0x2567
#define BOXDRAW_UP_DOUBLE_HORIZONTAL   0x2568
#define BOXDRAW_DOUBLE_UP_HORIZONTAL   0x2569
#define BOXDRAW_VERTICAL_HORIZONTAL_DOUBLE   0x256a
#define BOXDRAW_VERTICAL_DOUBLE_HORIZONTAL   0x256b
#define BOXDRAW_DOUBLE_VERTICAL_HORIZONTAL   0x256c
#define BLOCKELEMENT_FULL_BLOCK   0x2588
#define BLOCKELEMENT_LIGHT_SHADE   0x2591
#define GEOMETRICSHAPE_UP_TRIANGLE   0x25b2
#define GEOMETRICSHAPE_RIGHT_TRIANGLE   0x25ba
#define GEOMETRICSHAPE_DOWN_TRIANGLE   0x25bc
#define GEOMETRICSHAPE_LEFT_TRIANGLE   0x25c4
#define ARROW_LEFT   0x2190
#define ARROW_UP   0x2191
#define ARROW_RIGHT   0x2192
#define ARROW_DOWN   0x2193
#define EFI_BLACK   0x00
#define EFI_BLUE   0x01
#define EFI_GREEN   0x02
#define EFI_CYAN   (EFI_BLUE | EFI_GREEN)
#define EFI_RED   0x04
#define EFI_MAGENTA   (EFI_BLUE | EFI_RED)
#define EFI_BROWN   (EFI_GREEN | EFI_RED)
#define EFI_LIGHTGRAY   (EFI_BLUE | EFI_GREEN | EFI_RED)
#define EFI_BRIGHT   0x08
#define EFI_DARKGRAY   (EFI_BLACK | EFI_BRIGHT)
#define EFI_LIGHTBLUE   (EFI_BLUE | EFI_BRIGHT)
#define EFI_LIGHTGREEN   (EFI_GREEN | EFI_BRIGHT)
#define EFI_LIGHTCYAN   (EFI_CYAN | EFI_BRIGHT)
#define EFI_LIGHTRED   (EFI_RED | EFI_BRIGHT)
#define EFI_LIGHTMAGENTA   (EFI_MAGENTA | EFI_BRIGHT)
#define EFI_YELLOW   (EFI_BROWN | EFI_BRIGHT)
#define EFI_WHITE   (EFI_BLUE | EFI_GREEN | EFI_RED | EFI_BRIGHT)
#define EFI_TEXT_ATTR(Foreground, Background)   ((Foreground) | ((Background) << 4))
#define EFI_BACKGROUND_BLACK   0x00
#define EFI_BACKGROUND_BLUE   0x10
#define EFI_BACKGROUND_GREEN   0x20
#define EFI_BACKGROUND_CYAN   (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_GREEN)
#define EFI_BACKGROUND_RED   0x40
#define EFI_BACKGROUND_MAGENTA   (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_RED)
#define EFI_BACKGROUND_BROWN   (EFI_BACKGROUND_GREEN | EFI_BACKGROUND_RED)
#define EFI_BACKGROUND_LIGHTGRAY   (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_GREEN | EFI_BACKGROUND_RED)
#define EFI_WIDE_ATTRIBUTE   0x80

Typedefs

typedef struct
_EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL 
EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL
typedef
EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL 
SIMPLE_TEXT_OUTPUT_INTERFACE
typedef EFI_STATUS(EFIAPIEFI_TEXT_RESET )(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
typedef EFI_STATUS(EFIAPIEFI_TEXT_STRING )(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN CHAR16 *String)
typedef EFI_STATUS(EFIAPIEFI_TEXT_TEST_STRING )(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN CHAR16 *String)
typedef EFI_STATUS(EFIAPIEFI_TEXT_QUERY_MODE )(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN ModeNumber, OUT UINTN *Columns, OUT UINTN *Rows)
typedef EFI_STATUS(EFIAPIEFI_TEXT_SET_MODE )(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN ModeNumber)
typedef EFI_STATUS(EFIAPIEFI_TEXT_SET_ATTRIBUTE )(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN Attribute)
typedef EFI_STATUS(EFIAPIEFI_TEXT_CLEAR_SCREEN )(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This)
typedef EFI_STATUS(EFIAPIEFI_TEXT_SET_CURSOR_POSITION )(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN Column, IN UINTN Row)
typedef EFI_STATUS(EFIAPIEFI_TEXT_ENABLE_CURSOR )(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN BOOLEAN Visible)

Variables

EFI_GUID gEfiSimpleTextOutProtocolGuid

Detailed Description

Simple Text Out protocol from the UEFI 2.0 specification.

Abstraction of a very simple text based output device like VGA text mode or a serial terminal. The Simple Text Out protocol instance can represent a single hardware device or a virtual device that is an aggregation of multiple physical devices.

Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License that accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.


Define Documentation

#define ARROW_DOWN   0x2193

#define ARROW_LEFT   0x2190

#define ARROW_RIGHT   0x2192

#define ARROW_UP   0x2191

#define BLOCKELEMENT_FULL_BLOCK   0x2588

#define BLOCKELEMENT_LIGHT_SHADE   0x2591

#define BOXDRAW_DOUBLE_DOWN_HORIZONTAL   0x2566

#define BOXDRAW_DOUBLE_DOWN_LEFT   0x2557

#define BOXDRAW_DOUBLE_DOWN_RIGHT   0x2554

#define BOXDRAW_DOUBLE_HORIZONTAL   0x2550

#define BOXDRAW_DOUBLE_UP_HORIZONTAL   0x2569

#define BOXDRAW_DOUBLE_UP_LEFT   0x255d

#define BOXDRAW_DOUBLE_UP_RIGHT   0x255a

#define BOXDRAW_DOUBLE_VERTICAL   0x2551

#define BOXDRAW_DOUBLE_VERTICAL_HORIZONTAL   0x256c

#define BOXDRAW_DOUBLE_VERTICAL_LEFT   0x2563

#define BOXDRAW_DOUBLE_VERTICAL_RIGHT   0x2560

#define BOXDRAW_DOWN_DOUBLE_HORIZONTAL   0x2565

#define BOXDRAW_DOWN_DOUBLE_LEFT   0x2556

#define BOXDRAW_DOWN_DOUBLE_RIGHT   0x2553

#define BOXDRAW_DOWN_HORIZONTAL   0x252c

#define BOXDRAW_DOWN_HORIZONTAL_DOUBLE   0x2564

#define BOXDRAW_DOWN_LEFT   0x2510

Referenced by CreatePopUp().

#define BOXDRAW_DOWN_LEFT_DOUBLE   0x2555

#define BOXDRAW_DOWN_RIGHT   0x250c

Referenced by CreatePopUp().

#define BOXDRAW_DOWN_RIGHT_DOUBLE   0x2552

#define BOXDRAW_HORIZONTAL   0x2500

Referenced by CreatePopUp().

#define BOXDRAW_UP_DOUBLE_HORIZONTAL   0x2568

#define BOXDRAW_UP_DOUBLE_LEFT   0x255c

#define BOXDRAW_UP_DOUBLE_RIGHT   0x2559

#define BOXDRAW_UP_HORIZONTAL   0x2534

#define BOXDRAW_UP_HORIZONTAL_DOUBLE   0x2567

#define BOXDRAW_UP_LEFT   0x2518

Referenced by CreatePopUp().

#define BOXDRAW_UP_LEFT_DOUBLE   0x255b

#define BOXDRAW_UP_RIGHT   0x2514

Referenced by CreatePopUp().

#define BOXDRAW_UP_RIGHT_DOUBLE   0x2558

#define BOXDRAW_VERTICAL   0x2502

Referenced by CreatePopUp().

#define BOXDRAW_VERTICAL_DOUBLE_HORIZONTAL   0x256b

#define BOXDRAW_VERTICAL_DOUBLE_LEFT   0x2562

#define BOXDRAW_VERTICAL_DOUBLE_RIGHT   0x255f

#define BOXDRAW_VERTICAL_HORIZONTAL   0x253c

#define BOXDRAW_VERTICAL_HORIZONTAL_DOUBLE   0x256a

#define BOXDRAW_VERTICAL_LEFT   0x2524

#define BOXDRAW_VERTICAL_LEFT_DOUBLE   0x2561

#define BOXDRAW_VERTICAL_RIGHT   0x251c

#define BOXDRAW_VERTICAL_RIGHT_DOUBLE   0x255e

#define EFI_BACKGROUND_BLACK   0x00

#define EFI_BACKGROUND_BLUE   0x10

#define EFI_BACKGROUND_BROWN   (EFI_BACKGROUND_GREEN | EFI_BACKGROUND_RED)

#define EFI_BACKGROUND_CYAN   (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_GREEN)

#define EFI_BACKGROUND_GREEN   0x20

#define EFI_BACKGROUND_LIGHTGRAY   (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_GREEN | EFI_BACKGROUND_RED)

#define EFI_BACKGROUND_MAGENTA   (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_RED)

#define EFI_BACKGROUND_RED   0x40

#define EFI_BLACK   0x00

#define EFI_BLUE   0x01

#define EFI_BRIGHT   0x08

#define EFI_BROWN   (EFI_GREEN | EFI_RED)

#define EFI_CYAN   (EFI_BLUE | EFI_GREEN)

#define EFI_DARKGRAY   (EFI_BLACK | EFI_BRIGHT)

#define EFI_GREEN   0x02

#define EFI_LIGHTBLUE   (EFI_BLUE | EFI_BRIGHT)

#define EFI_LIGHTCYAN   (EFI_CYAN | EFI_BRIGHT)

#define EFI_LIGHTGRAY   (EFI_BLUE | EFI_GREEN | EFI_RED)

#define EFI_LIGHTGREEN   (EFI_GREEN | EFI_BRIGHT)

#define EFI_LIGHTMAGENTA   (EFI_MAGENTA | EFI_BRIGHT)

#define EFI_LIGHTRED   (EFI_RED | EFI_BRIGHT)

#define EFI_MAGENTA   (EFI_BLUE | EFI_RED)

#define EFI_RED   0x04

#define EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL_GUID

Value:

{ \
    0x387477c2, 0x69c7, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b } \
  }

#define EFI_TEXT_ATTR ( Foreground,
Background   )     ((Foreground) | ((Background) << 4))

#define EFI_WHITE   (EFI_BLUE | EFI_GREEN | EFI_RED | EFI_BRIGHT)

#define EFI_WIDE_ATTRIBUTE   0x80

#define EFI_YELLOW   (EFI_BROWN | EFI_BRIGHT)

#define GEOMETRICSHAPE_DOWN_TRIANGLE   0x25bc

#define GEOMETRICSHAPE_LEFT_TRIANGLE   0x25c4

#define GEOMETRICSHAPE_RIGHT_TRIANGLE   0x25ba

#define GEOMETRICSHAPE_UP_TRIANGLE   0x25b2

#define SIMPLE_TEXT_OUTPUT_PROTOCOL   EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL_GUID

Protocol GUID defined in EFI1.1.


Typedef Documentation

Clears the output device(s) display to the currently selected background color.

Parameters:
This The protocol instance pointer.
Return values:
EFI_SUCCESS The operation completed successfully.
EFI_DEVICE_ERROR The device had an error and could not complete the request.
EFI_UNSUPPORTED The output device is not in a valid text mode.

Makes the cursor visible or invisible

Parameters:
This The protocol instance pointer.
Visible If TRUE, the cursor is set to be visible. If FALSE, the cursor is set to be invisible.
Return values:
EFI_SUCCESS The operation completed successfully.
EFI_DEVICE_ERROR The device had an error and could not complete the request, or the device does not support changing the cursor mode.
EFI_UNSUPPORTED The output device is not in a valid text mode.

typedef EFI_STATUS(EFIAPI * EFI_TEXT_QUERY_MODE)(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN ModeNumber, OUT UINTN *Columns, OUT UINTN *Rows)

Returns information for an available text mode that the output device(s) supports.

Parameters:
This The protocol instance pointer.
ModeNumber The mode number to return information on.
Columns Returns the geometry of the text output device for the requested ModeNumber.
Rows Returns the geometry of the text output device for the requested ModeNumber.
Return values:
EFI_SUCCESS The requested mode information was returned.
EFI_DEVICE_ERROR The device had an error and could not complete the request.
EFI_UNSUPPORTED The mode number was not valid.

Reset the text output device hardware and optionaly run diagnostics

Parameters:
This The protocol instance pointer.
ExtendedVerification Driver may perform more exhaustive verfication operation of the device during reset.
Return values:
EFI_SUCCESS The text output device was reset.
EFI_DEVICE_ERROR The text output device is not functioning correctly and could not be reset.

typedef EFI_STATUS(EFIAPI * EFI_TEXT_SET_ATTRIBUTE)(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN Attribute)

Sets the background and foreground colors for the OutputString () and ClearScreen () functions.

Parameters:
This The protocol instance pointer.
Attribute The attribute to set. Bits 0..3 are the foreground color, and bits 4..6 are the background color. All other bits are undefined and must be zero. The valid Attributes are defined in this file.
Return values:
EFI_SUCCESS The attribute was set.
EFI_DEVICE_ERROR The device had an error and could not complete the request.
EFI_UNSUPPORTED The attribute requested is not defined.

typedef EFI_STATUS(EFIAPI * EFI_TEXT_SET_CURSOR_POSITION)(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN Column, IN UINTN Row)

Sets the current coordinates of the cursor position

Parameters:
This The protocol instance pointer.
Column The position to set the cursor to. Must be greater than or equal to zero and less than the number of columns and rows by QueryMode ().
Row The position to set the cursor to. Must be greater than or equal to zero and less than the number of columns and rows by QueryMode ().
Return values:
EFI_SUCCESS The operation completed successfully.
EFI_DEVICE_ERROR The device had an error and could not complete the request.
EFI_UNSUPPORTED The output device is not in a valid text mode, or the cursor position is invalid for the current mode.

typedef EFI_STATUS(EFIAPI * EFI_TEXT_SET_MODE)(IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN ModeNumber)

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

Parameters:
This The protocol instance pointer.
ModeNumber The mode number to set.
Return values:
EFI_SUCCESS The requested text mode was set.
EFI_DEVICE_ERROR The device had an error and could not complete the request.
EFI_UNSUPPORTED The mode number was not valid.

Write a string to the output device.

Parameters:
This The protocol instance pointer.
String The NULL-terminated string to be displayed on the output device(s). All output devices must also support the Unicode drawing character codes defined in this file.
Return values:
EFI_SUCCESS The string was output to the device.
EFI_DEVICE_ERROR The device reported an error while attempting to output the text.
EFI_UNSUPPORTED The output device's mode is not currently in a defined text mode.
EFI_WARN_UNKNOWN_GLYPH This warning code indicates that some of the characters in the string could not be rendered and were skipped.

Verifies that all characters in a string can be output to the target device.

Parameters:
This The protocol instance pointer.
String The NULL-terminated string to be examined for the output device(s).
Return values:
EFI_SUCCESS The device(s) are capable of rendering the output string.
EFI_UNSUPPORTED Some of the characters in the string cannot be rendered by one or more of the output devices mapped by the EFI handle.

Backward-compatible with EFI1.1.


Variable Documentation

Referenced by InternalPrintGraphic().


Generated on Thu Sep 24 23:14:20 2015 for MdePkg[ALL] by  doxygen 1.5.7.1