summaryrefslogtreecommitdiffstats
path: root/ShellPkg/Application/Shell/ConsoleLogger.h
diff options
context:
space:
mode:
Diffstat (limited to 'ShellPkg/Application/Shell/ConsoleLogger.h')
-rw-r--r--ShellPkg/Application/Shell/ConsoleLogger.h341
1 files changed, 0 insertions, 341 deletions
diff --git a/ShellPkg/Application/Shell/ConsoleLogger.h b/ShellPkg/Application/Shell/ConsoleLogger.h
deleted file mode 100644
index c470cdb7ab..0000000000
--- a/ShellPkg/Application/Shell/ConsoleLogger.h
+++ /dev/null
@@ -1,341 +0,0 @@
-/** @file
- Provides interface to shell console logger.
-
- Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>
- This program and the accompanying materials
- are licensed and made available under the terms and conditions of the BSD License
- which 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.
-**/
-
-#ifndef _CONSOLE_LOGGER_HEADER_
-#define _CONSOLE_LOGGER_HEADER_
-
-#include <Uefi.h>
-
-#include <Protocol/SimpleTextOut.h>
-#include <Protocol/EfiShell.h>
-#include <Protocol/EfiShellParameters.h>
-
-#include <Library/DebugLib.h>
-#include <Library/BaseLib.h>
-#include <Library/BaseMemoryLib.h>
-#include <Library/MemoryAllocationLib.h>
-#include <Library/UefiBootServicesTableLib.h>
-#include <Library/HiiLib.h>
-#include <Library/ShellLib.h>
-
-#define CONSOLE_LOGGER_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('c', 'o', 'P', 'D')
-
-typedef struct _CONSOLE_LOGGER_PRIVATE_DATA{
- UINTN Signature;
- EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL OurConOut; ///< the protocol we installed onto the system table
- EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *OldConOut; ///< old protocol to reinstall upon exiting
- EFI_HANDLE OldConHandle; ///< old protocol handle
- UINTN ScreenCount; ///< How many screens worth of data to save
- CHAR16 *Buffer; ///< Buffer to save data
- UINTN BufferSize; ///< size of buffer in bytes
-
- // start row is the top of the screen
- UINTN OriginalStartRow; ///< What the originally visible start row was
- UINTN CurrentStartRow; ///< what the currently visible start row is
-
- UINTN RowsPerScreen; ///< how many rows the screen can display
- UINTN ColsPerScreen; ///< how many columns the screen can display
-
- INT32 *Attributes; ///< Buffer for Attribute to be saved for each character
- UINTN AttribSize; ///< Size of Attributes in bytes
-
- EFI_SIMPLE_TEXT_OUTPUT_MODE HistoryMode; ///< mode of the history log
- BOOLEAN Enabled; ///< Set to FALSE when a break is requested.
- UINTN RowCounter; ///< Initial row of each print job.
-} CONSOLE_LOGGER_PRIVATE_DATA;
-
-#define CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(a) CR (a, CONSOLE_LOGGER_PRIVATE_DATA, OurConOut, CONSOLE_LOGGER_PRIVATE_DATA_SIGNATURE)
-
-/**
- Install our intermediate ConOut into the system table to
- keep a log of all the info that is displayed to the user.
-
- @param[in] ScreensToSave Sets how many screen-worths of data to save.
- @param[out] ConsoleInfo The object to pass into later functions.
-
- @retval EFI_SUCCESS The operation was successful.
- @return other The operation failed.
-
- @sa ConsoleLoggerResetBuffers
- @sa InstallProtocolInterface
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerInstall(
- IN CONST UINTN ScreensToSave,
- OUT CONSOLE_LOGGER_PRIVATE_DATA **ConsoleInfo
- );
-
-/**
- Return the system to the state it was before InstallConsoleLogger
- was installed.
-
- @param[in, out] ConsoleInfo The object from the install function.
-
- @retval EFI_SUCCESS The operation was successful
- @return other The operation failed. This was from UninstallProtocolInterface.
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerUninstall(
- IN OUT CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo
- );
-
-/**
- Displays previously logged output back to the screen.
-
- This will scroll the screen forwards and backwards through the log of previous
- output. If Rows is 0 then the size of 1/2 the screen will be scrolled. If Rows
- is (UINTN)(-1) then the size of the screen will be scrolled.
-
- @param[in] Forward If TRUE then the log will be displayed forwards (scroll to newer).
- If FALSE then the log will be displayed backwards (scroll to older).
- @param[in] Rows Determines how many rows the log should scroll.
- @param[in] ConsoleInfo The pointer to the instance of the console logger information.
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerDisplayHistory(
- IN CONST BOOLEAN Forward,
- IN CONST UINTN Rows,
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo
- );
-
-/**
- Function to return to normal output whent he scrolling is complete.
- @param[in] ConsoleInfo The pointer to the instance of the console logger information.
-
- @retval EFI_SUCCESS The operation was successful.
- @return other The operation failed. See UpdateDisplayFromHistory.
-
- @sa UpdateDisplayFromHistory
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerStopHistory(
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo
- );
-
-/**
- Updates the hidden ConOut to be displaying the correct stuff.
- @param[in] ConsoleInfo The pointer to the instance of the console logger information.
-
- @retval EFI_SUCCESS The operation was successful.
- @return other The operation failed.
-**/
-EFI_STATUS
-EFIAPI
-UpdateDisplayFromHistory(
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo
- );
-
-/**
- Reset the text output device hardware and optionaly run diagnostics
-
- @param This Pointer to EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL
- @param ExtendedVerification Indicates that a more extensive test may be performed
-
- @retval EFI_SUCCESS The text output device was reset.
- @retval EFI_DEVICE_ERROR The text output device is not functioning correctly and
- could not be reset.
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerReset (
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
- IN BOOLEAN ExtendedVerification
- );
-
-/**
- Write a Unicode string to the output device.
-
- @param[in] This Protocol instance pointer.
- @param[in] WString The NULL-terminated Unicode string to be displayed on the output
- device(s). All output devices must also support the Unicode
- drawing defined in this file.
- @retval EFI_SUCCESS The string was output to the device.
- @retval EFI_DEVICE_ERROR The device reported an error while attempting to output
- the text.
- @retval EFI_UNSUPPORTED The output device's mode is not currently in a
- defined text mode.
- @retval EFI_WARN_UNKNOWN_GLYPH This warning code indicates that some of the
- characters in the Unicode string could not be
- rendered and were skipped.
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerOutputString(
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
- IN CHAR16 *WString
- );
-
-/**
- Verifies that all characters in a Unicode string can be output to the
- target device.
-
- @param[in] This Protocol instance pointer.
- @param[in] WString The NULL-terminated Unicode string to be examined for the output
- device(s).
-
- @retval EFI_SUCCESS The device(s) are capable of rendering the output string.
- @retval EFI_UNSUPPORTED Some of the characters in the Unicode string cannot be
- rendered by one or more of the output devices mapped
- by the EFI handle.
-
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerTestString (
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
- IN CHAR16 *WString
- );
-
-/**
- Returns information for an available text mode that the output device(s)
- supports.
-
- @param[in] This Protocol instance pointer.
- @param[in] ModeNumber The mode number to return information on.
- @param[out] Columns Upon return, the number of columns in the selected geometry
- @param[out] Rows Upon return, the number of rows in the selected geometry
-
- @retval EFI_SUCCESS The requested mode information was returned.
- @retval EFI_DEVICE_ERROR The device had an error and could not
- complete the request.
- @retval EFI_UNSUPPORTED The mode number was not valid.
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerQueryMode (
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
- IN UINTN ModeNumber,
- OUT UINTN *Columns,
- OUT UINTN *Rows
- );
-
-/**
- Sets the output device(s) to a specified mode.
-
- @param[in] This Protocol instance pointer.
- @param[in] ModeNumber The mode number to set.
-
-
- @retval EFI_SUCCESS The requested text mode was set.
- @retval EFI_DEVICE_ERROR The device had an error and
- could not complete the request.
- @retval EFI_UNSUPPORTED The mode number was not valid.
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerSetMode (
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
- IN UINTN ModeNumber
- );
-
-/**
- Sets the background and foreground colors for the OutputString () and
- ClearScreen () functions.
-
- @param[in] This Protocol instance pointer.
- @param[in] 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.
-
- @retval EFI_SUCCESS The attribute was set.
- @retval EFI_DEVICE_ERROR The device had an error and
- could not complete the request.
- @retval EFI_UNSUPPORTED The attribute requested is not defined.
-
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerSetAttribute (
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
- IN UINTN Attribute
- );
-
-/**
- Clears the output device(s) display to the currently selected background
- color.
-
- @param[in] This Protocol instance pointer.
-
- @retval EFI_SUCCESS The operation completed successfully.
- @retval EFI_DEVICE_ERROR The device had an error and
- could not complete the request.
- @retval EFI_UNSUPPORTED The output device is not in a valid text mode.
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerClearScreen (
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This
- );
-
-/**
- Sets the current coordinates of the cursor position.
-
- @param[in] This Protocol instance pointer.
- @param[in] Column Column to put the cursor in. Must be between zero and Column returned from QueryMode
- @param[in] Row Row to put the cursor in. Must be between zero and Row returned from QueryMode
-
- @retval EFI_SUCCESS The operation completed successfully.
- @retval EFI_DEVICE_ERROR The device had an error and
- could not complete the request.
- @retval EFI_UNSUPPORTED The output device is not in a valid text mode, or the
- cursor position is invalid for the current mode.
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerSetCursorPosition (
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
- IN UINTN Column,
- IN UINTN Row
- );
-
-/**
- Makes the cursor visible or invisible
-
- @param[in] This Protocol instance pointer.
- @param[in] Visible If TRUE, the cursor is set to be visible. If FALSE, the cursor is
- set to be invisible.
-
- @retval EFI_SUCCESS The operation completed successfully.
- @retval EFI_DEVICE_ERROR The device had an error and could not complete the
- request, or the device does not support changing
- the cursor mode.
- @retval EFI_UNSUPPORTED The output device is not in a valid text mode.
-
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerEnableCursor (
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
- IN BOOLEAN Visible
- );
-
-/**
- Function to update and verify that the current buffers are correct.
-
- @param[in] ConsoleInfo The pointer to the instance of the console logger information.
-
- This will be used when a mode has changed or a reset ocurred to verify all
- history buffers.
-**/
-EFI_STATUS
-EFIAPI
-ConsoleLoggerResetBuffers(
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo
- );
-
-#endif //_CONSOLE_LOGGER_HEADER_
-