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