MdePkg: Include Shell/ShellDynamicCommand/ShellParameters definitions

Move Shell/ShellDynamicCommand/ShellParameters definitions from
ShellPkg to MdePkg.

The following patches will rename the header file name.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
This commit is contained in:
Ruiyu Ni
2016-10-18 16:22:36 +08:00
parent c6377bfacc
commit 52d2e0a08b
5 changed files with 15 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,86 +0,0 @@
/** @file
EFI Shell Dynamic Command registration protocol
(C) Copyright 2012-2014 Hewlett-Packard Development Company, L.P.<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 __EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL__
#define __EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL__
#include <ShellBase.h>
#include <Protocol/EfiShellParameters.h>
#include <Protocol/EfiShell.h>
// {3C7200E9-005F-4EA4-87DE-A3DFAC8A27C3}
#define EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL_GUID \
{ \
0x3c7200e9, 0x005f, 0x4ea4, { 0x87, 0xde, 0xa3, 0xdf, 0xac, 0x8a, 0x27, 0xc3 } \
}
//
// Define for forward reference.
//
typedef struct _EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL;
/**
This is the shell command handler function pointer callback type. This
function handles the command when it is invoked in the shell.
@param[in] This The instance of the EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL.
@param[in] SystemTable The pointer to the system table.
@param[in] ShellParameters The parameters associated with the command.
@param[in] Shell The instance of the shell protocol used in the context
of processing this command.
@return EFI_SUCCESS the operation was sucessful
@return other the operation failed.
**/
typedef
SHELL_STATUS
(EFIAPI * SHELL_COMMAND_HANDLER)(
IN EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL *This,
IN EFI_SYSTEM_TABLE *SystemTable,
IN EFI_SHELL_PARAMETERS_PROTOCOL *ShellParameters,
IN EFI_SHELL_PROTOCOL *Shell
);
/**
This is the command help handler function pointer callback type. This
function is responsible for displaying help information for the associated
command.
@param[in] This The instance of the EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL.
@param[in] Language The pointer to the language string to use.
@return string Pool allocated help string, must be freed by caller
**/
typedef
CHAR16*
(EFIAPI * SHELL_COMMAND_GETHELP)(
IN EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL *This,
IN CONST CHAR8 *Language
);
/// EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL protocol structure.
struct _EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL {
CONST CHAR16 *CommandName;
SHELL_COMMAND_HANDLER Handler;
SHELL_COMMAND_GETHELP GetHelp;
};
extern EFI_GUID gEfiShellDynamicCommandProtocolGuid;
#endif

View File

@ -1,60 +0,0 @@
/** @file
EFI Shell protocol as defined in the UEFI Shell 2.0 specification.
Copyright (c) 2006 - 2011, 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 __EFI_SHELL_PARAMETERS_PROTOCOL__
#define __EFI_SHELL_PARAMETERS_PROTOCOL__
#include <ShellBase.h>
#define EFI_SHELL_PARAMETERS_PROTOCOL_GUID \
{ \
0x752f3136, 0x4e16, 0x4fdc, { 0xa2, 0x2a, 0xe5, 0xf4, 0x68, 0x12, 0xf4, 0xca } \
}
typedef struct _EFI_SHELL_PARAMETERS_PROTOCOL {
///
/// Points to an Argc-element array of points to NULL-terminated strings containing
/// the command-line parameters. The first entry in the array is always the full file
/// path of the executable. Any quotation marks that were used to preserve
/// whitespace have been removed.
///
CHAR16 **Argv;
///
/// The number of elements in the Argv array.
///
UINTN Argc;
///
/// The file handle for the standard input for this executable. This may be different
/// from the ConInHandle in EFI_SYSTEM_TABLE.
///
SHELL_FILE_HANDLE StdIn;
///
/// The file handle for the standard output for this executable. This may be different
/// from the ConOutHandle in EFI_SYSTEM_TABLE.
///
SHELL_FILE_HANDLE StdOut;
///
/// The file handle for the standard error output for this executable. This may be
/// different from the StdErrHandle in EFI_SYSTEM_TABLE.
///
SHELL_FILE_HANDLE StdErr;
} EFI_SHELL_PARAMETERS_PROTOCOL;
extern EFI_GUID gEfiShellParametersProtocolGuid;
#endif

View File

@ -1,149 +0,0 @@
/** @file
Root include file for Shell Package modules that utilize the SHELL_RETURN type
Copyright (c) 2009 - 2016, 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 _SHELL_BASE_
#define _SHELL_BASE_
typedef VOID *SHELL_FILE_HANDLE;
typedef enum {
///
/// The operation completed successfully.
///
SHELL_SUCCESS = 0,
///
/// The image failed to load.
///
SHELL_LOAD_ERROR = 1,
///
/// The parameter was incorrect.
///
SHELL_INVALID_PARAMETER = 2,
///
/// The operation is not supported.
///
SHELL_UNSUPPORTED = 3,
///
/// The buffer was not the proper size for the request.
///
SHELL_BAD_BUFFER_SIZE = 4,
///
/// The buffer was not large enough to hold the requested data.
/// The required buffer size is returned in the appropriate
/// parameter when this error occurs.
///
SHELL_BUFFER_TOO_SMALL = 5,
///
/// There is no data pending upon return.
///
SHELL_NOT_READY = 6,
///
/// The physical device reported an error while attempting the
/// operation.
///
SHELL_DEVICE_ERROR = 7,
///
/// The device cannot be written to.
///
SHELL_WRITE_PROTECTED = 8,
///
/// The resource has run out.
///
SHELL_OUT_OF_RESOURCES = 9,
///
/// An inconsistency was detected on the file system causing the
/// operation to fail.
///
SHELL_VOLUME_CORRUPTED = 10,
///
/// There is no more space on the file system.
///
SHELL_VOLUME_FULL = 11,
///
/// The device does not contain any medium to perform the
/// operation.
///
SHELL_NO_MEDIA = 12,
///
/// The medium in the device has changed since the last
/// access.
///
SHELL_MEDIA_CHANGED = 13,
///
/// The item was not found.
///
SHELL_NOT_FOUND = 14,
///
/// Access was denied.
///
SHELL_ACCESS_DENIED = 15,
// note the skipping of 16 and 17
///
/// A timeout time expired.
///
SHELL_TIMEOUT = 18,
///
/// The protocol has not been started.
///
SHELL_NOT_STARTED = 19,
///
/// The protocol has already been started.
///
SHELL_ALREADY_STARTED = 20,
///
/// The operation was aborted.
///
SHELL_ABORTED = 21,
// note the skipping of 22, 23, and 24
///
/// A function encountered an internal version that was
/// incompatible with a version requested by the caller.
///
SHELL_INCOMPATIBLE_VERSION = 25,
///
/// The function was not performed due to a security violation.
///
SHELL_SECURITY_VIOLATION = 26,
///
/// The function was performed and resulted in an unequal
/// comparison..
///
SHELL_NOT_EQUAL = 27
}SHELL_STATUS;
#endif //__SHELL_BASE_