/** @file | |
Include file for basic command line parser for EBL (Embedded Boot Loader) | |
Copyright (c) 2007, Intel Corporation. All rights reserved.<BR> | |
Portions copyright (c) 2008 - 2009, Apple Inc. 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 __EBL_ADD_EXTERNAL_COMMAND_LIB_H__ | |
#define __EBL_ADD_EXTERNAL_COMMAND_LIB_H__ | |
#include <PiDxe.h> | |
#include <Protocol/EblAddCommand.h> | |
EFI_STATUS | |
EFIAPI | |
EblAddExternalCommands ( | |
IN const EBL_COMMAND_TABLE *EntryArray, | |
IN UINTN ArrayCount | |
); | |
/** | |
Return a keypress or optionally timeout if a timeout value was passed in. | |
An optional callback function is called every second when waiting for a | |
timeout. | |
@param Key EFI Key information returned | |
@param TimeoutInSec Number of seconds to wait to timeout | |
@param CallBack Callback called every second during the timeout wait | |
@return EFI_SUCCESS Key was returned | |
@return EFI_TIMEOUT If the TimoutInSec expired | |
**/ | |
EFI_STATUS | |
EFIAPI | |
EblGetCharKey ( | |
IN OUT EFI_INPUT_KEY *Key, | |
IN UINTN TimeoutInSec, | |
IN EBL_GET_CHAR_CALL_BACK CallBack OPTIONAL | |
); | |
/** | |
This routine is used prevent command output data from scrolling off the end | |
of the screen. The global gPageBreak is used to turn on or off this feature. | |
If the CurrentRow is near the end of the screen pause and print out a prompt | |
If the use hits Q to quit return TRUE else for any other key return FALSE. | |
PrefixNewline is used to figure out if a newline is needed before the prompt | |
string. This depends on the last print done before calling this function. | |
CurrentRow is updated by one on a call or set back to zero if a prompt is | |
needed. | |
@param CurrentRow Used to figure out if its the end of the page and updated | |
@param PrefixNewline Did previous print issue a newline | |
@return TRUE if Q was hit to quit, FALSE in all other cases. | |
**/ | |
BOOLEAN | |
EFIAPI | |
EblAnyKeyToContinueQtoQuit ( | |
IN UINTN *CurrentRow, | |
IN BOOLEAN PrefixNewline | |
); | |
#endif | |